Я только начинаю программировать на Java. У меня проблема исключения нулевого указателя в списке массива Мой код нижеИсключение Null указателя в java ArrayList
ArrayList<Arpaymentitem> arpaymentitemsList= jb.getArpaymentitems();
arpaymentitemsList.removeAll(Collections.singleton(null));
try {
for(Arpaymentitem arpaymentitem:arpaymentitemsList)
{
if (arpaymentitem.getInvoicekey()!=null) {
statement2.setString(1,arpaymentitem.getInvoicekey());
}
if(arpaymentitem.getInvoicekey() != null)
{
statement2.setString(2,arpaymentitem.getAmount());
}
}
statement2.addBatch();
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Я получаю ошибку пустого указателя исключение в операторе FOR. Я уверен, что в списке есть нулевые значения. Для того, чтобы игнорировать нулевые значения я ввел шаг
ArrayList<Arpaymentitem> arpaymentitemsList= jb.getArpaymentitems();
arpaymentitemsList.removeAll(Collections.singleton(null)); --> remove nulls
NPE Я получил это java.lang.NullPointerException в payment.Intacct_Payment.main (Intacct_Payment.java:169) и линия для (Arpaymentitem arpaymentitem: arpaymentitemsList)
Проблема по-прежнему сохраняется. Что я делаю неправильно здесь.
Вы уверены, что это: arpaymentitemsList не равно нулю? – Stultuske
Я ввел это arpaymentitemsList.removeAll (Collections.singleton (null)); для удаления нулевых значений. Разве это не так? – Karthi
нет, если сам список не создан, тогда вы просто бросаете NPE в другое место. – Stultuske