2016-11-14 55 views
-1

我的代碼中有什麼錯誤?該代碼不編譯,只在add.persons(p);我的java代碼中有什麼錯誤。不編譯

import javax.swing.*; 
public class AddressBook 
{ 
    ArrayList personInfo; 

    public AddressBook() 
    { 
     persons=new ArrayList(); 
    } 
    public void addperson() 
    { 
     String name= JOptionPane.showInputDialog("Enter name of the person "); 
     String address=JOptionPane.showInputDialog("Enter address of the person "); 
     String phoneNum =JOptionPane.showInputDialog("Enter phone number of the person "); 
    } 
     personInfo p = new personInfo(name, address, phoneNum); 
     persons.add(p); 
     public void searchPerson(String n) 
     { 
      for (int i = 0; i<persons.size(); i++) 
      { 
       PersonInfo p= (personInfo)person(i); 
       if (n.equals(p.name)) 
       { 
        p.printPersonInfo(); 
       } 

      } 
     } 
     public void deletPerson(String n) 
     { 
      for (int i = 0; i<persons.size(); i++) 
      { 
       PersonInfo p= (personInfo)person(i); 
       if (n.equals(p.name)) 
       { 
        person.remove(i); 
       } 

      } 
     } 
} 
+1

只能有一個方法內聲明,構造函數或代碼塊。你不能讓代碼浮動。我強烈建議您在IDE中使用代碼格式化程序。它會幫助你快速識別這類問題。我還建議你使用一個普通的'Lists persons',因爲這會簡化你的代碼並避免某些bug。 –

+0

您應該添加更多關於編譯器錯誤的信息。錯誤說了什麼,它出現在哪一行等等......對於這個問題,它不再是必要的,但是對於將來,添加所有相關信息總是很好的。 :) – QBrute

回答

2

移動這個

personInfo p = new personInfo(name, address, phoneNum); 
persons.add(p); 

的方法,一切都將在裏面工作給予編譯錯誤....

相關問題