看板 java 關於我們 聯絡資訊
※ 引述《ldg (ldg)》之銘言: : 歸納出這樣的結論: : 就是要開一個reference variable陣列 : 一定要開多少用多少 : 例如需要n個reference variable : 不可以貪圖coding辨識方便 : 而這樣設定reference[] array=new reference[n+1]; : 讓index從1到n : 請問這樣是正確嗎? : 回個文跟小弟說說吧 : 因為已經被這訊息搞了整晚 Orz nullPointerException的用意 是要你在存取的時候,一定要先初始化過那個元素。(基本資料型態除外。) 比方說今天是 int[] k=new int[100]; k[1]=5 ; //沒問題 因為int會給定初值0 但是今天如果是 class Person{ int age; Person(){ age=0; } Person(int k){ age=k; } public int getAge(){ return age; } public void setAge(int k){ age=k; } } Person[] k=new Person[100]; k[2]=new Person(); //初始化 k[2] k[2].setAge(5); //ok! 因為k[2]已被初始化 k[1].setAge(5); // error: k[1]尚未被初始化 處於null狀態, 會產生nullPointerException。 -- I am a person, and I am always thinking . Thinking in love , Thinking in life , Thinking in why , Thinking in worth. I can't believe any of what , I am just thinking then thinking , but worst of all , most of mine is thinking not actioning... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.134.27.68