2011-02-18 76 views
2

美好的一天......我正在創建一個地址簿程序......我在我的主菜單中使用了一個開關......並計劃爲我的編輯菜單創建另一個開關......我的問題是......我不'知道如何回到我的主開關...這是我的主要程序:我該如何讓我的交換機回到主交換機?

import javax.swing.JOptionPane; 
import javax.swing.JTextArea; 

public class AddressBook { 

    private AddressBookEntry entry[]; 
    private int counter; 

    public static void main(String[] args) { 
     AddressBook a = new AddressBook(); 
     a.entry = new AddressBookEntry[100]; 
     int option = 0; 
     while (option != 6) { 
      String content = "Choose an Option\n\n" 
        + "[1] Add an Entry\n" 
        + "[2] Delete an Entry\n" 
        + "[3] Update an Entry\n" 
        + "[4] View all Entries\n" 
        + "[5] View Specific Entry\n" 
        + "[6] Exit"; 
      option = Integer.parseInt(JOptionPane.showInputDialog(content)); 
      switch (option) { 
       case 1: 
        a.addEntry(); 
        break; 
       case 2: 

        break; 
       case 3: 
        a.editMenu(); 
        break; 
       case 4: 
        a.viewAll(); 
        break; 
       case 5: 
        break; 
       case 6: 
        System.exit(1); 
        break; 
       default: 
        JOptionPane.showMessageDialog(null, "Invalid Choice!"); 
      } 
     } 
    } 

    public void addEntry() { 
     entry[counter] = new AddressBookEntry(); 
     entry[counter].setName(JOptionPane.showInputDialog("Enter name: ")); 
     entry[counter].setAdd(JOptionPane.showInputDialog("Enter add: ")); 
     entry[counter].setPhoneNo(JOptionPane.showInputDialog("Enter Phone No.: ")); 
     entry[counter].setEmail(JOptionPane.showInputDialog("Enter E-mail: ")); 
     counter++; 
    } 

    public void viewAll() { 
     int i = 0; 
     for (; i < counter; i++) { 
      JOptionPane.showMessageDialog(null, new JTextArea(entry[i].getInfo())); 
     } 
    } 

    public void editMenu() { 
     int option = 0; 
     while (option != 6) { 
      String content = "Choose an Option\n\n" 
        + "[1] Edit Name\n" 
        + "[2] Edit Address\n" 
        + "[3] Edit Phone No.\n" 
        + "[4] Edit E-mail address\n" 
        + "[5] Go Back to Main Menu\n"; 
      option = Integer.parseInt(JOptionPane.showInputDialog(content)); 
      switch (option) { 
       case 1: 
        editEntry(); 
        break; 
       case 2: 
        break; 
       case 3: 
        break; 
       case 4: 
        break; 
       case 5: 
        break; 
       default: 
        JOptionPane.showMessageDialog(null, "Invalid Choice!"); 
      } 
     } 
    } 

    public void editEntry() { 
     String EName; 
     EName = JOptionPane.showInputDialog("Enter name to edit: "); 
     for (int i = 0; i < counter; i++) { 
      if (entry[i].getName().equals(EName)) { 
       entry[i].setName(JOptionPane.showInputDialog("Enter new name: ")); 
      } 
     } 
    } 
} 

請幫助...在此先感謝:)

+0

我想知道如果我需要使用像C中的轉到,但我不知道如何在Java中使用它..請幫助...再次提前致謝 – iamanapprentice 2011-02-18 13:42:39

回答

3

要返回給調用者,可以使用return;代替break;

In editMenu

  case 5: 
       return; 

不過,我懷疑你的問題是,

while (option != 6) { 

應該

while (option != 5) { 

你也可以使用一個標籤打出來的,而循環這將在這裏做同樣的事情的。

+0

非常感謝你...解決我的問題... :) – iamanapprentice 2011-02-18 13:48:44