线程" main"中的例外情况java.util.UnknownFormatConversionException:Conversion =' '

时间:2013-05-04 03:37:11

标签: java

package com.supermarket.project;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        float amountF;
        Scanner amount = new Scanner(System.in);
        System.out.printf("Please enter the amount of purchase: ");
        amountF = amount.nextFloat();
        if (amountF >= 300) {
            System.out.printf("You amount of purchase is: %1.1f.%n"
                    + "You have a discount of: %1.1f * 90% = %1.1f.%n"
                    + "You can enjoy free delivery service.", amountF, amountF,
                    amountF * 0.9);
        } else {
            System.out.printf("Your amount of purchase is: %1.1f.%n"
                    + "Delivery service is available for additional $30.",
                    amountF);
        }
    }
}

然后我收到了一个错误:

Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = ' '
    at java.util.Formatter.checkText(Formatter.java:2547)
    at java.util.Formatter.parse(Formatter.java:2523)
    at java.util.Formatter.format(Formatter.java:2469)
    at java.io.PrintStream.format(PrintStream.java:970)
    at java.io.PrintStream.printf(PrintStream.java:871)
    at com.supermarket.project.Main.main(Main.java:11)

我该怎么做才能纠正这个错误?帮助!!!当我输入的金额超过300但不低于300时,会出现此错误。我应该做什么?

1 个答案:

答案 0 :(得分:6)

"You have a discount of: %1.1f * 90% = %1.1f.%n"

问题来自您的90%

将其更改为90%%