java iterator遍历_java使用Lambda表达式遍历Iterator迭代器详解

Java8为Iterator引入了一个forEachRemaining(Consumer

action)默认方法,这个方法所需的Consumer参数同样也是函数式接口。

在程序调用Iterator的forEachRemaining(Consumer

action)遍历集合元素的时候,程序会依次将集合元素传给Consumer的accept(T t)方法(这个接口当中唯一的抽象方法)。java.util.function 中的 Function、Supplier、Consumer、Predicate 和其他函数式接口被广泛用在支持 Lambda 表达式的 API 中。“void accept(T t);”是 Consumer 的核心方法,用来对给定的参数 T 执行定义操作。

下面是使用Lambda表达式来遍历集合元素:public class IteratorEach

{

public static void main(String[] args)

{

// 创建一个集合

Collection objs = new HashSet();

objs.add("Java教程1");

objs.add("Java教程2");

objs.add("Java教程3");

// 获取objs集合对应的迭代器

Iterator it = objs.iterator();

// 使用Lambda表达式(目标类型是Comsumer)来遍历集合元素

it.forEachRemaining(obj - > System.out.println("迭代集合元素:" + obj));

}

}

输出结果:迭代集合元素:Java教程3

迭代集合元素:Java教程2

迭代集合元素:Java教程1

在上面的程序当中,第11行代码调用了Iterator的forEachRemaining()方法来遍历集合元素,传给该方法的参数是一个Lambda表达式,该Lambda表达式的目标类型是Consumer,所以的话,上面代码也可用于遍历集合元素。

这个方面的内容就给你介绍到这里了,你都了解了吧,更多常见问题,请继续关注奇Q工具网来进行了解吧。

推荐阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值