1

直接来自这个API

setMaximumIntegerDigits

公共无效 setMaximumIntegerDigits(int newValue)

设置数字的整数部分允许的最大位数。对于 BigInteger 和 BigDecimal 对象以外的格式化数字,使用 newValue 和 309 中的较低值。负输入值替换为 0。

在这种情况下,“使用 newValue 和 309 中的较低者”是什么意思?考虑到 newValue 是作为参数传递的 int 并且 309 我不知道他们指的是什么。任何线索将不胜感激。提前致谢。

4

1 回答 1

1

如果您查看源代码,DecimalFormat您会发现

// Upper limit on integer and fraction digits for a Java double
static final int DOUBLE_INTEGER_DIGITS  = 309;

它是 Java 中小数点前可能表示的位数double,只要双精度的允许范围是 [-1.79769313486232e308 ;1.79769313486232e308 ](注意指数)。

干杯,

于 2013-08-26T13:33:14.163 回答