2013-12-10 54 views
0

這是一些我很想知道自己的工作,儘管我似乎無法將我的代碼排序。在這部分代碼中,我需要提供一個用戶可以選擇的菜單,然後再執行其他功能。Java應用程序提供不同選項的菜單?

基本上我所問的是我如何去允許用戶選擇一個將在Switch語句中獲得的選項,雖然有些人有更好的主意?

這是我的代碼:

int menuchoice = 1; 
String options; 

switch (menuchoice) 
{ 
case 1: options = "Transfer"; 
     break; 
case 2: options = "Recent transactions"; 
     break; 
case 3: options = "Display account details and current balance"; 
     break; 
case 4: options = "Quit"; 
     break; 
} 
System.out.println(options); 

我認識到,「menuchoice = 1」不允許用戶選擇不改變代碼,他們想要的選項?哪一個我覺得有點混淆......我該怎麼做呢?

+0

這是一個命令行或GUI程序?它是互動的還是選擇傳遞給'main'?你如何期望用戶輸入一個選擇? – rob

回答

1

您正在爲每個案例聲明新的String options,並且原始文件尚未初始化。的System.out.println(選項)是使用一個在其範圍是原來的初始化一個

String options = "Transfer"; 

只需使用

options = "Transfer"; 

改變他們所有

switch (menuchoice) 
{ 
case 1: options = "Transfer"; 
     break; 
case 2: options = "Recent transactions"; 
     break; 
case 3: options = "Display account details and current balance"; 
     break; 
case 4: options = "Quit"; 
     break; 
} 

也得到來自用戶的菜單選項,您應該使用掃描儀

Scanner scanner = new Scanner(System.in);  // scans the console. 

System.out.println("Enter a menu option: "); // prints to console 
int menuOption = scanner.nextInt();   // gets next int from console 
+0

哦,是的,謝謝,我知道如何做掃描儀,雖然我沒有意識到我可以用它作爲開關語句,另一個愚蠢的時刻,現在probs太累了,現在正在處理它,謝謝反正 – user2863681

0

你可以使用一個JOptionPane.showInputDialog(「你在這裏爲String菜單」),讓她想要使用哪個選項的用戶輸入(作爲一個字符串),那麼你可以轉換結果爲int和使用開關確定輸入的選項。

是的,你不應該在交換機內部創建新的變量,只要使用你在外面創建的變量。

相關問題