+1 امتیاز
قبل در برنامه نویسی توسط (922 امتیاز)
ویرایش شده قبل توسط

من یه کد برای پردازش یک لیست دارم که با foreach در جاوا پیاده سازیش کردم، نمی دونم چرا وقتی به حلقه foreach که می رسه NullPointerException. 

برنامرو که debug می کنم وقتی تو پایگاه داده هیچ اطلاعاتی وجود نداره اینجا NullPointerException می ده.

for (UserModel user : userList) {
    // do whatever
}

 

1 پاسخ

+2 امتیاز
قبل توسط (255 امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ

وقتی foreach میخواد به سراغ آیتم های این لیست بره چون لیست خالی هست exception  میده. طبیعیه چون میخواد از آنها استفاده کنه. برای اینکه این قسمت رو مدیریت کنید، بهتراست شما قبل از دستور foreach کدی برای چک کردن خالی نبودن لیست بنویسید.

موفق باشید.

قبل توسط (922 امتیاز)
منظورتون از خالی بودن: size = 0 یا null ؟
قبل توسط (255 امتیاز)
بله دقیقا. (if (list.size()==0  بیشتر جواب میده.
قبل توسط (922 امتیاز)
من قبل از حلقه for صفر بودن لیست رو که میام چک کنم بازم NullPointerException می ده.
ممنون مشکلرو فهمیدم باید null بودن لیست رو چک کنم. یا اینکه اصلا لیست null نفرستم.
قبل توسط (255 امتیاز)
درسته!
وقتی لیست خالی باشه گرفتن سایزش بی معنیه! آفرین.
قبل توسط (40 امتیاز)
+1
دلیل NullPointerException فراخوانی خودکار متد iterator لیست مورد نظر است.
قبل توسط (255 امتیاز)
Thanks for your comment

سوالات مشابه

0 امتیاز
1 پاسخ 1.3هزار بازدید
0 امتیاز
1 پاسخ 347 بازدید
0 امتیاز
1 پاسخ 593 بازدید
0 امتیاز
1 پاسخ 339 بازدید
سوال شده 5 سال قبل در برنامه نویسی توسط 1993 (242 امتیاز)
0 امتیاز
0 پاسخ 484 بازدید
0 امتیاز
2 پاسخ 711 بازدید
+1 امتیاز
1 پاسخ 508 بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط tashtboland (2.2هزار امتیاز)
0 امتیاز
2 پاسخ 1.2هزار بازدید
...