public static void main(String[] args) {
System.out.println("Bitte geben Sie einen Betrag und den Buchstaben der gewunschten Wahrung ein.");
try {
Scanner input = new Scanner(System.in);
double betrag = input.nextInt();
String wahrung = input.next();
double result = 0;
switch(wahrung.charAt(0)) {
case d:
result = betrag * 1.18;
System.out.println(result);
break;
case p:
result = betrag * 0.88;
System.out.println(result);
break;
case f:
result = betrag * 0.88;
System.out.println(result);
break;
}
} catch (Exception e) {
System.out.println("Bitte geben Sie eine Zahl ein.");
}
}
当我尝试编译它时,它说:
Rechner.java:18: error: cannot find symbol
case d:
^
symbol: variable d
location: class Rechner
Rechner.java:22: error: cannot find symbol
case p:
^
symbol: variable p
location: class Rechner
Rechner.java:26: error: cannot find symbol
case f:
^
symbol: variable f
location: class Rechner
你使用char
切换,所以每个case也应该是一个char值。
尝试
switch(wahrung.charAt(0)) {
case 'd':
result = betrag * 1.18;
System.out.println(result);
break;
case 'p':
result = betrag * 0.88;
System.out.println(result);
break;
case 'f':
result = betrag * 0.88;
System.out.println(result);
break;
}