Saya mengalami masalah aneh saat menggunakan iterator Java.
Dalam fungsi tertentu, saya menerima objek iterable bernama filelist
, dan saya melakukan hal berikut:
System.out.println("First iteration:");
for(Text t : filelist) System.out.println(t);
System.out.println("Second iteration:");
for(Text t : filelist) System.out.println(t);
dan hasilnya adalah:
First iteration:
file2.txt
file1.txt
file1.txt
Second iteration:
filelist
bertipe Iterable<Text>
. Saya bekerja dengan kerangka peta/pengurangan Hadoop.
Jadi pertanyaan saya adalah, mengapa daftar file kosong di loop kedua, padahal saya tidak mengubahnya di loop pertama?
filelist
? - person Tunaki   schedule 16.01.2016System.out.println(filelist.getClass().getName());
, dan ceritakan apa yang Anda dapatkan. Meskipun demikian, apa pun jenisnya, kecuali struktur data yang mendasarinya diubah secara bersamaan, hal ini tidak akan pernah terjadi. - person JB Nizet   schedule 16.01.2016