Java中Iterator和Spilled Iterator的区别。
迭代器和拆分迭代器这两个接口都用于迭代集合。
Java8中引入了拆分迭代器来实现并行性。它可以拆分给定的元素集,并可以使用不同的独立线程并行执行操作。它可以并行地以及顺序地遍历元素。splitIterator接口中有以下重要方法-
trySplit-用于将给定的元素集拆分为多个片段。
tryAdvance-等同于Iterator接口中可用的hasNext/next方法
getExactSizeIfKnown<>-用于获取给定元素集的大小。
分流器示例
public class Main { public static void main(String args[]) { List<Integer> listOfInteger = new ArrayList<>(); listOfInteger.add(78); listOfInteger.add(10); listOfInteger.add(20); listOfInteger.add(30); Spliterator<Integer> s = listOfInteger.spliterator(); Spliterator<Integer> s1 = s.trySplit(); s.forEachRemaining(System.out::println); System.out.println("Traverse Second Half "); s1.forEachRemaining(System.out::println); } }