[英]Combine switch statement with a for loop
我目前正在使用Java GUI。 現在我的問題是,如何以適當的方式將switch語句與for循環組合在一起。 當前的方法正在工作,但是鍵入該語句需要大量時間。
public void labelSwitchCase(int i, int userInput) {
// switch case on i
switch (i) {
case 0: gridLabels[i].setText("" + userInput);
break;
case 1: gridLabels[i].setText("" + userInput);
break;
case 2: gridLabels[i].setText("" + userInput);
break;
case 3: gridLabels[i].setText("" + userInput);
break;
case 4: gridLabels[i].setText("" + userInput);
break;
case 5: gridLabels[i].setText("" + userInput);
break;
case 6: gridLabels[i].setText("" + userInput);
break;
case 7: gridLabels[i].setText("" + userInput);
break;
case 8: gridLabels[i].setText("" + userInput);
break;
// no defoult
}
}
只需使用:
public void labelSwitchCase(int i, int userInput) {
gridLabels[i].setText("" + userInput);
}
使用這個(注意String.valueof):
public void labelSwitchCase(
final int index,
final int userinput)
{
gridLables[index].setText(String.valueOf(userInput));
}
您的方法應為:
public void labelSwitchCase(int i, int userInput) {
gridLabels[i].setText("" + userInput);
}
無需for
循環。
在所有切換條件下,您都在做同樣的事情。
gridLabels[i].setText("" + userInput);
因此,您不必在所有情況下都具有switch語句。
您只需在函數內設置文本即可
public void labelSwitchCase(int i, int userInput)
{
gridLabels[i].setText("" + userInput);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.