2017-04-23 63 views
0

我新的Java和我得到的編譯器這個錯誤在數組對象NullPointerException異常錯誤

輸入名稱:在線程 帳戶鍋異常「主要」 顯示java.lang.NullPointerException .BankTest.main(BankTest.java:17)C:\ Users \ Carl INVOKER \ AppData \ Local \ NetBeans \ Cache \ 8.2 \ executor-snippets \ run.xml:53: 返回的Java:1 BUILD FAILED(total時間:7秒)

Cla SS帳戶

package account; 

public class Account { 
    private String name; 
    private String surname; 
    private int age; 
    private int sex; 

    public Account(String name, String surname, int age, int sex) { 
     this.name = name; 
     this.surname = surname; 
     this.age = age; 
     this.sex = sex; 
    } 

    public Account() { 
    } 

    public String getName() { 
     return name; 
    } 

    public void setName(String name) { 
     this.name = name; 

    } 

    public String getSurname() { 
     return surname; 
    } 

    public void setSurname(String surname) { 
     this.surname = surname; 

    } 

    public int getAge() { 
     return age; 
    } 

    public void setAge(int age) { 
     this.age = age; 
    } 

    public int getSex() { 
     return sex; 
    } 

    public void setSex(int sex) { 
     this.sex = sex; 
    } 
} 

類BankTest

package account; 

import java.util.Scanner; 

public class BankTest { 

    public static void main(String args[]) { 
     Scanner scan = new Scanner(System.in); 

     Account user[] = new Account[10]; 

     System.out.println("Enter name : "); 
     user[1].setName(scan.nextLine()); 

     System.out.println(user[1].getName()); 
    } 
} 
+0

此線程是否已解決?如果你標記了一個解決的問題,它將對其他用戶和我自己有很大的幫助。如果您找到了更好的解決方案,請與社區分享。 – EyuelDK

+0

我沒有使用對象數組,我使用ArrayLists。您建議的代碼不起作用。 –

+0

這是一個對象數組'Account user [] = new Account [10];'不是ArrayList。一個ArrayList就像這樣'List user = new ArrayList ();' – EyuelDK

回答

0

你的陣列中有沒有價值。 Account user[] = new Account[10];只會創建數組,但不會初始化數組中的元素。因此,當您執行此語句user[1].setName(scan.nextLine());時,user[1]未引用Account對象,它實際上引用了null值;因此,調用方法setName將引發NullPointerException。要初始化您的帳戶數組,您需要在訪問之前執行此類操作。

for (int i=0: i<user.length; i++) { 
    user[i] = new Account(null, null, 0, 0); 
} 
相關問題