สมมติมี Iterator ดังนี้:
Iterator<Integer> iterator = Arrays.asList(50, 100, 200, 300, 400, 500, 1000).iterator();
แปลง Iterator เป็น List:
List<Integer> myList = new ArrayList<>();
iterator.forEachRemaining(myList::add);
ตัวอย่างโค้ดเต็ม
import java.util.*;
public class Demo {
public static void main(String[] args) {
Iterator<Integer> iterator = Arrays.asList(50, 100, 200, 300, 400, 500, 1000).iterator();
List<Integer> myList = new ArrayList<>();
iterator.forEachRemaining(myList::add);
System.out.println("Iterator to list = " + myList);
}
}
ผลลัพธ์
Iterator to list = [50, 100, 200, 300, 400, 500, 1000]
วิธีอื่น: ใช้ StreamSupport.stream(iterator.spliterator(), false).collect(Collectors.toList()) หรือ While Loop แบบดั้งเดิม while(iterator.hasNext()) list.add(iterator.next())