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。