java中判斷兩個浮點型(float)資料是否相等
阿新 • • 發佈:2018-12-15
示例程式碼:
public static void main(String[] args) { float a = 10.222222225f; float b = 10.222222229f; System.out.println("使用==判斷是否相等:" + (a == b));// 超出精度範圍 System.out.println("使用Math.abs()判斷是否相等:" + (Math.abs(a - b) >= 0)); System.out.println("比較a是否大於b:" + (a > b)); System.out.println("比較b是否大於a:" + (a < b)); } 輸出的結果: 使用==判斷是否相等:true 使用Math.abs()判斷是否相等:true 比較a是否大於b:false 比較b是否大於a:false
總結:
一般不會直接用"=="或者"!="對兩個浮點數進行比較。
判斷兩個浮點數float a 與 float b 是否相等可以根據他們的差的絕對值與0的大小來進行判斷。
Math.abs(a - b) >= 0或者Math.abs(a - b) <= 0則代表這兩個浮點數相等