【问题标题】:Substring/toString/IndexOf Function not working past a certain value [closed]Substring/toString/IndexOf 函数在超过某个值时不起作用[关闭]
【发布时间】:2014-05-27 14:07:20
【问题描述】:

我有一个函数:

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

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

这是数据类型问题吗?

谢谢,

【问题讨论】:

  • Java Javascript?选择一个。
  • 一方面,这不是有效的 JavaScript。所以我猜是Java。
  • 据我所知,substringtoString 在 java 或 javascript 中都不是预定义的全局函数。
  • @JanDvorak:toStringsubstring。他当然可以用这些名字定义函数。
  • 因此,近距离投票不清楚

标签: java


【解决方案1】:

问题在于您使用的双精度值。 99999999.99999 的值将由 toString() 转换为 9.999999999999E7,因此您将获得结果。为了去除小数点后的数字,您可以使用DecimalFormat 类:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-02
    • 2011-08-18
    • 2018-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-29
    相关资源
    最近更新 更多