Substring / toString / IndexOf函数不能超过某个值

时间:2014-05-27 14:07:20

标签: java

我有一个功能:

ItemValue[i] = substring(toString(obj),0,toString(obj).indexOf(".") + 4); 

其中obj是一个数字。该功能适用​​于9,999,999.99999 - > 9999999.999,但99,999,999.99999等值转换为9.999。

是数据类型问题吗?

谢谢,

1 个答案:

答案 0 :(得分:2)

问题在于您使用的是双值。价值99999999.999999.999999999999E7翻译为toString(),以便获得结果。为了在十进制后删除数字,您可以使用DecimalFormat class:

    DecimalFormat f = new DecimalFormat();
    f.setMaximumFractionDigits(3);
    f.setMinimumFractionDigits(3);