Java 是一門強類型語言,比較數(shù)值類型時需要注意一些事項,大致可以分為整數(shù)和浮點數(shù)兩類。
比較整數(shù)
int a = 10; int b = 20; if(a == b){ System.out.println("a 等于 b"); }else if(a >b){ System.out.println("a 大于 b"); }else{ System.out.println("a 小于 b"); }
當比較整數(shù)時,可以使用==
、>
、>=
、<
、<=
等比較運算符直接比較。
比較浮點數(shù)
double x = 0.3; double y = 0.1 + 0.1 + 0.1; if(Math.abs(x - y)< 0.0001){ System.out.println("x 等于 y"); }else if(x >y){ System.out.println("x 大于 y"); }else{ System.out.println("x 小于 y"); }
當比較浮點數(shù)時,因為浮點數(shù)在計算機中以二進制形式存在,有精度誤差,所以不能直接使用比較運算符去判斷兩者是否相等,而應該通過比較兩者的差值是否在一個可以接受的精度范圍內來進行判斷。
以上是關于 Java 中比較整數(shù)和浮點數(shù)的一些注意事項,希望對大家有所幫助。