1
このフォーマットで何を入力しても、このエラーメッセージは表示されます。小数点以下2桁を取得するだけで、1ドルの金額を表すことができます。どんな助け?スレッド "main"の例外java.util.UnknownFormatConversionException:Conversion = '。'?
Scanner keyboard=new Scanner(System.in);
System.out.println("Enter theater number: ");
theater=keyboard.nextInt();
while(theater!=-999)
{
while(theater==1)
{
System.out.println("Enter number of adult tickets: ");
adultTickets=keyboard.nextInt();
System.out.println("Enter number of child tickets: ");
childTickets=keyboard.nextInt();
finalTicketsAdult1+=adultTickets;
finalTicketsChild1+=childTickets;
System.out.println("Enter theater number: ");
theater=keyboard.nextInt();
}
while(theater==2)
{
System.out.println("Enter number of adult tickets: ");
adultTickets=keyboard.nextInt();
System.out.println("Enter number of child tickets: ");
childTickets=keyboard.nextInt();
finalTicketsAdult2+=adultTickets;
finalTicketsChild2+=childTickets;
System.out.println("Enter theater number: ");
theater=keyboard.nextInt();
}
System.out.println("Theater 1\n");
System.out.println("Number of Adult Tickets: " + finalTicketsAdult1);
System.out.println("Number of Child Tickets: " + finalTicketsChild1);
totalSalesThtr1=(finalTicketsAdult1*9.50 + finalTicketsChild1*6.00);
System.out.printf("Total sales: $%.2",totalSalesThtr1 + "\n");
System.out.println("Theater 2\n");
System.out.println("Number of Adult Tickets: " + finalTicketsAdult2);
System.out.println("Number of Child Tickets: " + finalTicketsChild2);
totalSalesThtr2=(finalTicketsAdult2*12.50 + finalTicketsChild2*7.50);
System.out.printf("Total sales: $%.2",totalSalesThtr2 + "\n");
overallSales=totalSalesThtr1 + totalSalesThtr2;
System.out.printf("Overall sales: $%.2",overallSales);
}}}
Enter theater number:
1
Enter number of adult tickets:
5
Enter number of child tickets:
5
Enter theater number:
2
Enter number of adult tickets:
5
Enter number of child tickets:
5
Enter theater number:
-999
Theater 1
Number of Adult Tickets: 5
Number of Child Tickets: 5
Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = '.'
at java.util.Formatter.checkText(Formatter.java:2547)
at java.util.Formatter.parse(Formatter.java:2533)
at java.util.Formatter.format(Formatter.java:2469)
at java.io.PrintStream.format(PrintStream.java:970)
at java.io.PrintStream.printf(PrintStream.java:871)
これを修正する方法はわかりませんが、私はこのことを正しくやっていると思います。これを修正する理由や方法はありますか?
これを変更したので、今このエラーが表示されます。スレッド "main"の例外java.util.IllegalFormatConversionException:f!= java.lang.String – Icodin
あなたは '+"取り出していませんでした。それはそれを浮動小数点型から 'String'に変換します。 –
ありがとうございます、私はその部分を見落としました。私が持っていた問題を解決してくれてありがとう=) – Icodin