概述
demo
/*
1.创建一个List,将Iterator中的数据添加到List中
*/
CopyOnWriteArrayList<Integer> numbers
= new CopyOnWriteArrayList<>(new Integer[]{1, 3, 5, 8});
Iterator<Integer> iterator = numbers.iterator();
List<Integer> actualList = new ArrayList<Integer>();
while (iterator.hasNext()) {
actualList.add(iterator.next());
}
actualList.forEach(System.out::println);
/*
2.使用Java 8的foeEachRemaining方法可以将Iterator中的每个集合添加到List中
*/
CopyOnWriteArrayList<Integer> numbers
= new CopyOnWriteArrayList<>(new Integer[]{1, 3, 5, 8});
Iterator<Integer> iterator = numbers.iterator();
List<Integer> actualList = new ArrayList<Integer>();
iterator.forEachRemaining(actualList::add);
actualList.forEach(System.out::println);
/*
3.使用Java 8 Streams API
首先将iterator转换为Iterable,在使用Stream的collect转换为List
*/
CopyOnWriteArrayList<Integer> numbers
= new CopyOnWriteArrayList<>(new Integer[]{1, 3, 5, 8});
Iterator<Integer> iterator = numbers.iterator();
Iterable<Integer> iterable = () -> iterator;
List<Integer> actualList = StreamSupport
.stream(iterable.spliterator(), false)
.collect(Collectors.toList());
actualList.forEach(System.out::println);
/*
3.使用 Apache Commons Collections库提供的工具类可以将Iterator转换为List
*/
CopyOnWriteArrayList<Integer> numbers
= new CopyOnWriteArrayList<>(new Integer[]{1, 3, 5, 8});
Iterator<Integer> iterator = numbers.iterator();
List<Integer> actualList = IteratorUtils.toList(iterator);
actualList.forEach(System.out::println);
最后
以上就是仁爱水杯为你收集整理的Iterator转List的几种方法的全部内容,希望文章能够帮你解决Iterator转List的几种方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复