我有3个问题。如果我建议如何解决这些问题,我感激不尽。
我的应用程序从主菜单开始。当我插入1时,它将显示第一个游戏细节。当我在对话框中插入“FW”时,它将带我进入下一个游戏细节。 “BK”会让我回到之前的游戏细节。
Q1。我的问题是应用程序带我到下一个游戏细节,即使我插入错误的字母命令。我如何确保只有正确的命令服从?
Q2。该应用程序不会让我回到上一个游戏菜单。我错过了什么吗?
Q3。我如何编写代码才能返回主菜单?我已经复制了主菜单。但是当我再次尝试使用该应用程序时。它会终止自己。
import javax.swing.*;
import java.util.ArrayList;
public class gamelist {
public static void main(String args[]){
ArrayList<String> sku = new ArrayList<String> ();
sku.add("1");
sku.add("2");
sku.add("3");
sku.add("4");
ArrayList<String> games = new ArrayList<String>();
games.add("Swimming");
games.add("Running");
games.add("Cycling");
games.add("Basketball");
String mainMenu = JOptionPane.showInputDialog(" Main Menu\n 1." +
" Display Each Game\n 2. Quit");
int selectOption = Integer.parseInt(mainMenu);
switch (selectOption){
case 1:
// Display 1st game
String input1 = JOptionPane.showInputDialog(null, sku.get(0) + " " + games.get(0) + "\n\n" +
"Enter FW for Next " + "\n" +
"Enter BK for Back" + "\n" +
"Enter M to return to Main Menu." + "\n");
if (input1.equals("FW")){
for ( int i=1; i < sku.size(); i++){
JOptionPane.showInputDialog(null,sku.get(i) + " " + games.get(i) + "\n\n" +
"Enter FW for Next " + "\n" +
"Enter BK for Back" + "\n" +
"Enter M to return to Main Menu." + "\n");
}
}
else if( input1.equals("BK")){
for ( int j=1; j < sku.size(); j--) {
JOptionPane.showInputDialog(null,sku.get(j) + " " + games.get(j) +"\n\n" +
"Enter FW for Next " + "\n" +
"Enter BK for Back" + "\n" +
"Enter M to return to Main Menu." + "\n");
}
}
else if( input1.equals("M"))
JOptionPane.showInputDialog(" Main Menu\n 1." +
" Display Each Game\n 2. Quit");
break;
default:
JOptionPane.showMessageDialog(null, "Goodbye");
System.exit(0);
break;
}
}
}
答案 0 :(得分:-1)
这只是Q3的答案。
不要在amin菜单中写break;
...