gpt4 book ai didi

java - 在Java中打印固定大小的 double

转载 作者:行者123 更新时间:2023-12-01 13:30:37 25 4
gpt4 key购买 nike

我有一个矩阵如下(例如):

1 2
1000000000000 3.15

我想以正确列表的方式将其打印到字符串中,每个条目正好占据 8 个位置:

1.000000    2.000000
1.00e006 3.150000

我一直在研究 DecimalFormat、NumberFormat 并找到了一种用我自己编写的特定函数来实现它的方法,但是当使用十进制表示法写入数字时它会失败。有什么方法可以将 double 打印到占用指定数量空格的字符串中,无论它是如何编写的(常规或科学记数法)?

最佳答案

为什么不是这个?如果需要,您可以使用正则表达式删除该符号。这可能需要更多的工作。

public static String formatScientific(double val) {
// Default case.
String out = String.format("%1.6f", val);

// Use scientific notation on values greater than 10.
if (val >= 10)
out = String.format("%1.2e", val).replaceAll("\\+", "").concat("0");

return out;
}

输出:

1.000000
2.000000
1.00e120
3.150000

编辑:我应该检查 val >= 10,而不是 val >= 10^2 哎呀...

关于java - 在Java中打印固定大小的 double ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21590855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com