我需要比较格式的一些双重值
例如:
double a = 18.0;
double b = 18.00;
double c = 19.0;
a == b //Comparing for format => False
a == c //Comparing for format => True
有任何方法或想法吗?
答案 0 :(得分:3)
a
和b
之间几乎没有区别。 double
值不知道其格式;他们只是数字。
如果您将它们存储为字符串,则会有所不同,但a
和b
的值完全相同。
答案 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,创建一些类并传递这两个值,将两者都转换为字符串,而不是比较,相应地返回值