我想創建一個循環,用戶輸入比薩餅澆頭的一些值。他們可以吃意大利辣香腸,菠蘿等。當他們鍵入「完成」時,我希望它跳出循環。我有這一切工作。它只是我的循環,這是問題。我有4個比薩餅頂部,所以我自然而然地把它放在4次左右。但是,如果用戶輸入了錯誤的值,那會使用我的4個循環中的一個。現在我可以將櫃檯設置爲200,所以他們不可能多次錯誤。但我希望有一個更清潔的版本。所以它會一直提示用戶,直到輸入「done」。我嘗試使用一個while循環,同時嵌套在do-while中。類似於For循環問題
while(size != "done")
但是這也沒有效果。祂我的代碼:
public List<String> Input(){
List<String> toppings = new ArrayList<String>();
Scanner sc = new Scanner(System.in);
String size;
System.out.println("What pizza toppings; Pepperoni, Fungi, Pineapple or Bacon, type 'done' when your finished: ");
FORLOOP: for(int i = 0; i < 4 ; i++){
do {
size = sc.next();
if (size.equalsIgnoreCase("Pepperoni") || size.equalsIgnoreCase("Fungi") || size.equalsIgnoreCase("pineapple") || size.equalsIgnoreCase("bacon")) {
toppings.add(size);
} else if(size.equalsIgnoreCase("done")){
break FORLOOP;
}
else{
System.out.print("Choose either 'Pepperoni', 'Fungi', 'bacon' or 'pineapple' Toppings, type 'done' when finshed: ");
}
} while (false);
}
return toppings;
}
「沒有工作」。爲什麼不?這應該。 – Nanne
我在輸入了大約6個錯誤的值 –
後,我有一個計算器,當一個SO帶你到達SO時。 –