我正在制作一个简单的Android计算器应用程序,它根据用户输入的数字计算百分比。通常它在一个合理的值内,所以我使用了int。但我遇到了大数字的问题,并且int自动处理十进制值,所以我试图找到一个替代方案。我应该为大数字使用哪种数据类型,这是非常准确的?
答案 0 :(得分:5)
我应该使用哪种数据类型来获得大而准确的数字?
我会根据Javadoc使用BigDecimal
不可变,任意精度的带符号十进制数。 BigDecimal由任意精度整数未缩放值和32位整数 scale 组成。
例如,
BigDecimal a = new BigDecimal("1000");
BigDecimal b = new BigDecimal("0.001");
BigDecimal c = a.multiply(b);
System.out.println(c.toPlainString());