Похоже, вы вызываете несколько методов в вашем цикле, не проверяя, является ли объект, для которого вы его вызываете, пустым или нет. ВСЕГДА рекомендуется делать это (особенно, если вы не уверены в контракте объекта, возвращаемого данным методом)
Таким образом, в основном, когда вы делаете что-то вроде object.method()
и / или object.method1().method2()
, убедитесь, что object
и / или object.method1()
НЕ НУЛЬ, прежде чем вызывать последующие методы для их возвращаемых значений.
Кроме того, вы можете прерывать вызовы следующим образом, чтобы лучше отлаживать и ловить NPE в точном месте:
Object returnObj = object.method1();
Object anotherReturn = returnObj.method2();