понедельник, 2 мая 2011 г.

Java - ошибка "main" java.lang.NullPointerException

Если у вас возникает ошибка:
main" java.lang.NullPointerException
то, возможно, вы не инициализировали используемые переменные.

Мой случай.
Написал класс ImageLevel, создаю массив объектов этого класса в цикле:

ImageLevel imageLevels[];
for (int i = 0; i < maxLevel; i++){
      imageLevels[i] = new ImageLevel( imageArray, i );
}

Решение достаточно просто и очевидно, необходимо добавить одну строчку:
imageLevels = new ImageLevel[maxLevel + 1];

Тогда код станет следующим:
ImageLevel imageLevels[];
imageLevels = new ImageLevel[maxLevel + 1];
for (int i = 0; i < maxLevel; i++){
      imageLevels[i] = new ImageLevel( imageArray, i );
}