String.format%d是否始终与BigInteger兼容?

时间:2014-08-14 03:18:20

标签: java biginteger string.format

使用String.format%d及其变体,我们可以轻松地格式化原始整数和长整数。但是,这些格式选项是否与BigInteger完美配合?

我做了一些测试,但它们似乎运作良好,例如:

public class Test6 {
    public static void main(final String args[]) {
        final java.math.BigInteger b = java.math.BigInteger.TEN.pow(999999);
        System.out.println(String.format("%,d", b));
    }
}

但是有什么值得注意的吗?

1 个答案:

答案 0 :(得分:7)

广泛section in the documentation for format strings

我认为唯一棘手的部分可能是区域设置敏感度(比如使用小数点),但这也适用于其他数字类型。

  

以下转换可能适用于BigInteger。

     

'd'

     

要求将输出格式化为十进制整数。应用定位算法。

     

如果给出'#'标志,则抛出FormatFlagsConversionMismatchException。