java Convert from string to double删除尾随的零
我正在尝试将双精度列表从字符串格式转换为双精度格式。为此,我将它们放入一个列表,并使用Double.parseDouble(string)
方法
这适用于大多数数字,但当double包含一个尾随零时,parseDouble
方法将其删除,会产生不需要的输出。我不希望这个被移除
String[] values = {"124.50", "45.801", "-15.210"};
List<Double> nums = new ArrayList<Double>();
for(String s: values)
nums.add(Double.parseDouble(s));
Collections.sort(nums);
for(Double d: nums){
System.out.print(d + " ");
}
这将产生以下输出:
-15.21 45.801 124.5
但是我想要后面的零。使用格式化行的问题是,在打印值时,我必须指定所需的浮点精度,但我不想让数字精确到某一点,只要保留零就行了
我是不是搞错了
# 1 楼答案
您可以存储对原始字符串的引用,并打印它,而不是解析的双精度字符串
结果: