基於以下觀察,switch語句可能看起來像這樣:
int menuSelection = keyboard.nextint;
String menuSelectionDisplay;
switch(menuSelection)
{
case 1:
menuSelectionDisplay = "1";
break;
case 2:
menuSelectionDisplay = "2";
break;
case 3:
menuSelectionDisplay = "3";
break;
default:
menuSelectionDisplay = "?";
break;
}
Switch語句需要用花括號{}
有一個「默認」條款被認爲是一個好主意在您的switch語句中。當沒有任何一個案例匹配時,它可以作爲一個可以被執行的全部產品。在上面的例子中,如果menuSelection的值恰好爲4,則會執行默認子句。
switch語句接受一個參數,該參數用於確定要運行哪種情況。把它看作一系列if-else語句。
int value = 5;
switch(value)
{
case 5: System.out.println("Hello!"); break;
case 6: System.out.println("Bye!"); break;
default: System.out.println("Huh?"); break;
}
是相同的:
if(value === 5)
{
System.out.println("Hello!");
}
else if(value === 6)
{
System.out.println("Bye!");
}
else
{
System.out.println("Huh?");
}
在你的情況下,出現一個int值被設置爲一個字符串。這是無效的;你需要或者
- 集的字符串的值是一個字符串(
String s = "1";
),或
- 設置一個int的值是一個int(
int i = 1;
)。
最後,可以不變量的類型多次代碼內重新聲明(這是具有int menuSelection = keyboard.nextint;
和int menuSelection = 3;
在同一範圍內)
參見http://docs.oracle.com/javase/tutorial/ java/nutsandbolts/switch.html。 – VGR
您需要打開一個變量。像'''switch(x)'''。 – Siddhartha
你寫開關,但沒有。 –