我想在qala中将1.1231053E7
这样的双重转换为11,231,053.0
。目前我转换双打的方式是做f"$number"
,其中number
是双倍价值。不幸的是,这只是给了我一个1.1231053E7
字符串。
我可以使用NumberFormat
或DecimalFormat
将其转换为科学记数法,但这些也迫使我选择预定的精度。我想要灵活的精确度。所以...
val number1 = 1.2313215
val number2 = 100
val number4 = 3.333E2
......转换时应该......
1.2313215
100
333.3
目前DecimalFormat
让我在施工过程中选择精度如下:new DecimalFormat(##.##)
。 #
之后的每个.
表示小数点。
如果我使用f"$number"
,它会正确处理小数点,但就像我之前说过的那样,它无法处理科学记数法。
只需确定你需要的.
之后的位数,写出隐藏零的数字:
val fmt = new java.text.DecimalFormat("#,##0.##############")
for (x <- List[Double](1.2313215, 100, 3.333E2)) println(fmt.format(x))
打印:
1.2313215
100
333.3