Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 想要我的代码只打印2位小数吗 public class Exercise05\u 08{ 公共静态void main(字符串[]args){ System.out.println(“摄氏\t\tFahrenheit\t | \tFahrenheit\tCelsius”); System.out.println(“-------------------------------------------------------------”; 双摄氏度=40;双法伦海特=120; 对于(int i=1;i_Java - Fatal编程技术网

Java 想要我的代码只打印2位小数吗 public class Exercise05\u 08{ 公共静态void main(字符串[]args){ System.out.println(“摄氏\t\tFahrenheit\t | \tFahrenheit\tCelsius”); System.out.println(“-------------------------------------------------------------”; 双摄氏度=40;双法伦海特=120; 对于(int i=1;i

Java 想要我的代码只打印2位小数吗 public class Exercise05\u 08{ 公共静态void main(字符串[]args){ System.out.println(“摄氏\t\tFahrenheit\t | \tFahrenheit\tCelsius”); System.out.println(“-------------------------------------------------------------”; 双摄氏度=40;双法伦海特=120; 对于(int i=1;i,java,Java,您应使用以下方法: 将使用小数点后两位设置值的格式 由于您使用的是println(),您可能希望在格式字符串的末尾包含“\n”以插入换行符。进行以下更改,使其不能只打印点后的2位数字: System.out.format("%.2f", celsius); 并打印: NumberFormat formatter = new DecimalFormat("%.2f"); String s = formatter.format(celsiusToFahrenheit(celsius)); 您可

您应使用以下方法:

将使用小数点后两位设置值的格式


由于您使用的是println(),您可能希望在格式字符串的末尾包含“\n”以插入换行符。

进行以下更改,使其不能只打印点后的2位数字:

System.out.format("%.2f", celsius); 
并打印:

NumberFormat formatter = new DecimalFormat("%.2f");
String s = formatter.format(celsiusToFahrenheit(celsius));

您可以使用以下命令保留两位小数:


您可以找到有关自定义格式和模式构造(以及如何使用它们)的其他信息。

简单的解决方法是将结果乘以100,将其转换为整数,然后再除以100,再转换为双精度

这可能不是最优雅的解决方案,但它会起作用

编辑:显然有一个更优雅的解决方案,所以忘了它。

不,没有。请参阅以获取证据。
NumberFormat formatter = new DecimalFormat("%.2f");
String s = formatter.format(celsiusToFahrenheit(celsius));
System.out.println(celsius + "\t\t" + s + "\t|\t" + farenheit + "\t\t" + fahrenheitToCelsius(farenheit));
DecimalFormat myFormatter = new DecimalFormat("#.00");
String output = myFormatter.format(value);