Iterator如何转换为list呢?

戚薇 Java经验 发布时间:2023-06-12 17:25:00 阅读数:16817 1
下文笔者讲述Iterator转换为list的方法分享,如下所示  

Iterator转换为list的方法

方式1:
   使用while循环

方式2:
   使用ForEachRemaining

方式3:
   使用stream

使用while

@Test
public void useWhile(){
	List<String> stringList= new ArrayList<>();
	Iterator<String> stringIterator= Arrays.asList("a","b","c").iterator();
	while(stringIterator.hasNext()){
		stringList.add(stringIterator.next());
	}
	log.info("{}",stringList);
}

使用ForEachRemaining

Iterator接口有个default方法:

default void forEachRemaining(Consumer<? super E> action) {
	Objects.requireNonNull(action);
	while (hasNext())
		action.accept(next());
}

@Test
public void useForEachRemaining(){
	List<String> stringList= new ArrayList<>();
	Iterator<String> stringIterator= Arrays.asList("a","b","c").iterator();
	stringIterator.forEachRemaining(stringList::add);
	log.info("{}",stringList);
}

使用stream

 
 
List<String> stringList= StreamSupport.stream(stringIterable.spliterator(),false).collect(Collectors.toList());
        log.info("{}",stringList);

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202306/16865619236774.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者