1. 程式人生 > >java中比較兩個double型別的資料大小

java中比較兩個double型別的資料大小

double a = 0.001;
double b = 0.0011;
BigDecimal data1 = new BigDecimal(a);
BigDecimal data2 = new BigDecimal(b);
data1.compareTo(data2)
非整型數,運算由於精度問題,可能會有誤差,建議使用BigDecimal型別!

public int compareTo(BigDecimal val)
將此 BigDecimal 與指定的 BigDecimal 比較。根據此方法,值相等但具有不同標度的兩個 BigDecimal 物件(如,2.0 和 2.00)被認為是相等的。相對六個 boolean 比較運算子 (<, ==, >, >=, !=, <=) 中每一個運算子的各個方法,優先提供此方法。建議使用以下語句執行上述比較:(x.compareTo(y)
 <<em>op
0),其中 <<em>op> 是六個比較運算子之一。
引數:
val - 將此 BigDecimal 與之比較的 BigDecimal
返回:
當此 BigDecimal 在數字上小於、等於或大於 val 時,返回 -1、0 或 1