Java 我该如何使输出四舍五入到小数点后两位?
我在这里的代码运行得很好,但每当我运行它时,它似乎并没有结束,我不知道要添加什么以及在哪里添加它Java 我该如何使输出四舍五入到小数点后两位?,java,netbeans,decimal,Java,Netbeans,Decimal,我在这里的代码运行得很好,但每当我运行它时,它似乎并没有结束,我不知道要添加什么以及在哪里添加它 package com.mycompany.billofsale; public class Billofsale { public static void main(String[] args) { double s = 12.49; double p = 20.00; double t = 0.13; double res
package com.mycompany.billofsale;
public class Billofsale {
public static void main(String[] args) {
double s = 12.49;
double p = 20.00;
double t = 0.13;
double result = s * t;
double result2 = s + result;
double result3 = p - (s + result);
System.out.println("The total is "+s
+ "\n The tax is "+result
+ "\n The total cost with tax is "+result2
+ "\n The change is "+result3);
}
}
您需要使用十进制格式将要打印的所有数字格式化为所需的十进制 请尝试使用以下代码:
double s = 12.49;
double p = 20.00;
double t = 0.13;
double result = s * t;
double result2 = s + result;
double result3 = p - (s + result);
DecimalFormat format = new DecimalFormat(".00");
format.setRoundingMode(RoundingMode.HALF_UP);
System.out.println("The total is " + s + "\n The tax is " +format.format(result) + "\n The total cost with tax is " + format.format(result2)
+ "\n The change is " + format.format(result3));
您需要使用十进制格式将要打印的所有数字格式化为所需的十进制 请尝试使用以下代码:
double s = 12.49;
double p = 20.00;
double t = 0.13;
double result = s * t;
double result2 = s + result;
double result3 = p - (s + result);
DecimalFormat format = new DecimalFormat(".00");
format.setRoundingMode(RoundingMode.HALF_UP);
System.out.println("The total is " + s + "\n The tax is " +format.format(result) + "\n The total cost with tax is " + format.format(result2)
+ "\n The change is " + format.format(result3));
它给出了错误的不可编译源代码-错误的树类型:DecimalFormat您必须导入库,import java.text.DecimalFormat;它仍然为舍入模式部分提供了一个错误。它说找不到SYMBOL忘记取整模式库,导入java.math.RoundingMode;非常感谢你!它给出了错误的不可编译源代码-错误的树类型:DecimalFormat您必须导入库,import java.text.DecimalFormat;它仍然为舍入模式部分提供了一个错误。它说找不到SYMBOL忘记取整模式库,导入java.math.RoundingMode;非常感谢你!顺便说一句,千万不要用double来赚钱。使用整整数,或者使用BigDecimal。顺便说一句,不要使用double表示金钱。使用整整数,或使用BigDecimal。