我有一個簡短的問題,告訴我爲什麼第一個例子不工作,第二個工作。實例前 代碼:特定的NullPointerException異常Java
Tiles[] myTiles = new Tile[23];
number = 1;
第一示例:
for(Tile tile : this.myTiles) {
if (number != this.myTiles.length) {
tile = new Tile(number, getResources().getColor(R.color.puzzle_default));
number++;
}
}
第二示例:
for(Tile tile : this.myTiles) {
if (number != this.myTiles.length){
this.myTiles[number-1] = new Tile(number, getResources().getColor(R.color.puzzle_default));
number++;
}
}
如果我在其他方法中類使用以下代碼
this.myTiles[0].getNumber();
這是NullPointerE xception。
但與第二個例子很好地工作。
我真的不知道爲什麼。感謝您的任何響應
因爲你的第一個for循環不修改數組中的對象。 – user2336315
第一個例子中的tile不參考我的數組中的對象嗎? – user2899587
'myTiles'是什麼類型 –