JDK8 中关于集合的遍历

Lambda

Lambda 是JDK8新特性 对它的概念不再重复说明,只是对于代码中个别表达式做简单介绍,
lambda表达式就个人理解就是“*没有任何声明的可带入参(可以是java的可变参数)可访问外部
变量(有外部变量的贮存区域,可访问方法引用与访问构造)的可执行的代码块的语法糖*”。

ps:Lambda访问外部变量时 外部变量不可变,此处的不可变是指变量的引用不可变
关于 stream不做过多介绍 ,可以自己查看资料

List 集合的遍历

List<Integer> test = new ArrayList<>();
for (int i = 0; i < 5; i++) {
    test.add(i);
}
System.out.println("==========for模式============");
for(int i = 0 ; i < test.size();i++){
    System.out.println(test.get(i));
}
System.out.println("==========foreach============");
test.forEach(integer -> System.out.println(integer));
System.out.println("==========stream==============");
test.stream().forEach(System.out::println);
System.out.println("==========配置filter=========");
test.stream().filter(integer -> integer == 0).forEach(System.out::println);

Map 遍历

Map<String, Object> param = new HashMap<>();
param.put("test1", "测试一下");
param.put("test2", "测试两下");
param.forEach((key, value) -> {
    System.out.println(key);
    System.out.println(value);
});
System.out.println("#########################");
param.keySet().stream().filter(key -> key.equalsIgnoreCase("test1")).forEach(key -> {
   System.out.println(key);
});
System.out.println("*************************");
param.entrySet().stream().filter(entry -> entry.getKey().equalsIgnoreCase("test1")).forEach(key -> {
    System.out.println(key);
});
System.out.println("=========================");
param.values().stream().filter(value -> value.equals("测试两下")).forEach(System.out::println);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值