簡體   English   中英

從數組訪問方法時發生java.lang.NullPointerException錯誤

[英]java.lang.NullPointerException error while accessing method from array

我只是停留在錯誤“ 線程“主 ”中的異常” java.lang.NullPointerException “請通過解決方案告訴我我犯的錯誤。 它是一個簡單的數組。 我如何從此數組訪問方法setAge(int)。

    Person arr[] = new Person[2];

    arr[0].setAge(20);

謝謝。

您正在創建具有兩個空插槽的陣列。 首先填充以下插槽:

arr[0] = new Person();
arr[1] = new Person();

或對於大數組使用循環:

for(int personIndex = 0; personIndex < arr.size; personIndex++)
{
    arr[personIndex] = new Person();
}

您永遠不會初始化數組中的任何對象。

arr[0] = new Person();

您尚未初始化人員數組。 首先像這樣初始化數組的對象

 Person arr[] = new Person [2];
 arr[0]=new Person ();
 arr[1]=new Person ();

現在設置人的年齡:-

 arr[0].setAge(20);
 arr[1].setAge(25);

new Person [2]創建了一個數組,該數組可以在arr [0]和arr [1](基本等於null)上保存兩個person對象。但是您尚未在每個位置將arr [0]初始化為一個新的Person對象。 因此,當嘗試為位於arr [0]處的對象設置值時,您正在嘗試將年齡設置為空對象,這將引發空指針異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM