我正在编写一个简单的Java程序。我需要从输入中获取一个字符串,并将其分成两个部分:1-double 2-string。然后,我需要在double上进行简单的计算,并将结果以特定精度(4)发送到输出。它运行得很好,但当输入为0时,就无法正常工作。
例如,对于这些输入,输出将是:
1 kg 输出:2.2046
3.1 kg 输出:6.8343
但是当输入为0时,输出应该为0.0000,但它显示为0.0。 我阅读了关于双精度的类似帖子,他们建议使用BigDecimal类,但在这种情况下我不能使用它们。 我用于执行此操作的代码是:
例如,对于这些输入,输出将是:
1 kg 输出:2.2046
3.1 kg 输出:6.8343
但是当输入为0时,输出应该为0.0000,但它显示为0.0。 我阅读了关于双精度的类似帖子,他们建议使用BigDecimal类,但在这种情况下我不能使用它们。 我用于执行此操作的代码是:
line=input.nextLine();
array=line.split(" ");
value=Double.parseDouble(array[0]);
type=array[1];
value =value*2.2046;
String s = String.format("%.4f", value);
value = Double.parseDouble(s);
System.out.print(value+" kg\n");