直接来自此API:
setMaximumIntegerDigits
公共无效setMaximumIntegerDigits(int newValue)
设置a的整数部分中允许的最大位数
数。用于格式化BigInteger和BigDecimal以外的数字
对象,则使用newValue和309中的较低者。负输入值
被替换为0。
在这种情况下,“使用newValue和309中的较低者”是什么意思?考虑到newValue是作为参数传递的int,309我不知道他们指的是什么。
任何线索将不胜感激。提前致谢。
最佳答案
如果您查看DecimalFormat
的源代码,则会发现
// Upper limit on integer and fraction digits for a Java double
static final int DOUBLE_INTEGER_DIGITS = 309;
在Java
double
中,它是可以表示的小数点前的位数,只要double的允许范围是[-1.79769313486232e308; 1.79769313486232e308](请注意指数)。干杯,