比较java格式的双值?

时间:2016-04-06 18:23:44

标签: java double

我需要比较格式的一些双重值

例如:

double a = 18.0;
double b = 18.00;
double c = 19.0;

a == b //Comparing for format => False
a == c //Comparing for format => True

有任何方法或想法吗?

3 个答案:

答案 0 :(得分:3)

ab之间几乎没有区别。 double值不知道其格式;他们只是数字。

如果您将它们存储为字符串,则会有所不同,但ab的值完全相同。

答案 1 :(得分:2)

也许你可以使用十进制:

java.math.BigDecimal.equals(BigDecimal val)

所以

BigDecimal bg1, bg2;

    bg1 = new BigDecimal("20.0");
    bg2 = new BigDecimal("20.00");

与等于bg1和bg2在值和比例上不相等

答案 2 :(得分:0)

" =="只是你不能做到这一点,使用OOP,创建一些类并传递这两个值,将两者都转换为字符串,而不是比较,相应地返回值