java8 list和map的forEach
list forEach示例
public class HelloWorld {
public static void main(String[] args) {
List<User> list = new ArrayList<>();
for(int i=1;i<=10;i++) {
list.add(new User(i, "user_" + i));
}
//list forEach
list.forEach(user -> {
user.setId(user.getId() + 10);
System.out.println(user);
});
}
private static class User{
public User(Integer id, String name) {
this.id = id;
this.name = name;
}
Integer id;
String name;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
'}';
}
}
}
执行结果:
User{id=11, name='user_1'}
User{id=12, name='user_2'}
User{id=13, name='user_3'}
User{id=14, name='user_4'}
User{id=15, name='user_5'}
User{id=16, name='user_6'}
User{id=17, name='user_7'}
User{id=18, name='user_8'}
User{id=19, name='user_9'}
User{id=20, name='user_10'}
Map的forEach
public class HelloWorld {
public static void main(String[] args) {
Map<Integer, User> map = new HashMap<>(10);
for(int i=1;i<=10;i++) {
map.put(i, new User(i, "user_" + i));
}
//map forEach
map.forEach((k, v) -> {
System.out.println("key: " + k + ", value:" + v);
});
}
private static class User{
public User(Integer id, String name) {
this.id = id;
this.name = name;
}
Integer id;
String name;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
'}';
}
}
}
执行结果:
key: 1, value:User{id=1, name='user_1'}
key: 2, value:User{id=2, name='user_2'}
key: 3, value:User{id=3, name='user_3'}
key: 4, value:User{id=4, name='user_4'}
key: 5, value:User{id=5, name='user_5'}
key: 6, value:User{id=6, name='user_6'}
key: 7, value:User{id=7, name='user_7'}
key: 8, value:User{id=8, name='user_8'}
key: 9, value:User{id=9, name='user_9'}
key: 10, value:User{id=10, name='user_10'}
java8 list和map的forEach的更多相关文章
- Java8之Stream/Map
本篇用代码示例结合JDk源码讲了Java8引入的工具接口Stream以及新Map接口提供的常用默认方法. 参考:http://winterbe.com/posts/2014/03/16/java ...
- 000 list与map的foreach使用
一:list的使用 1.程序 package com.jun.it.java8; import java.util.ArrayList; import java.util.List; public c ...
- JavaScript 中 map、foreach、reduce 间的区别
一直对map.foreach.reduce这些函数很是生疏,今天看underscorejs时好好研究了一下,一研究我就更懵了,这不是一样嘛,都是遍历,所以我就去知乎找了一下,整理出了比较好的几个说法. ...
- java8中的map和reduce
java8中的map和reduce 标签: java8函数式mapreduce 2014-06-19 19:14 10330人阅读 评论(4) 收藏 举报 分类: java(47) FP(2) ...
- 【Javascript】JS遍历数组的三种方法:map、forEach、filter
前言 近一段时间,因为项目原因,会经常在前端对数组进行遍历.处理,JS自带的遍历方法有很多种,往往不加留意,就可能导致知识混乱的现象,并且其中还存在一些坑.前端时间在ediary中总结了js原生自带的 ...
- JavaScript中Map和ForEach的区别
译者按: 惯用Haskell的我更爱map. 原文: JavaScript — Map vs. ForEach - What’s the difference between Map and ForE ...
- Javascript的map与forEach的区别
原理: 高级浏览器支持forEach方法语法:forEach和map都支持2个参数:一个是回调函数(item,index,list)和上下文: forEach:用来遍历数组中的每一项:这个方法执行是没 ...
- java8 list转Map报错Collectors.toMap :: results in "Non-static method cannot be refernced from static context"
1.问题:java8 list转Map 报错Collectors.toMap :: results in "Non-static method cannot be refernced fro ...
- java8 list、map遍历以及反射
//新建list List<User> userList = new ArrayList<>(); User user = new User(); user.setId(&qu ...
随机推荐
- springboot use
https://github.com/ityouknow/spring-boot-examples http://www.ityouknow.com/springboot/2017/06/26/spr ...
- 苹果绿RGB值
ESL的值为:85,123,205 RGB的值为:199,237,204 ESL和RGB只需填一个即可,另一个会自动调整~
- leetcode 136. Single Number 、 137. Single Number II 、 260. Single Number III(剑指offer40 数组中只出现一次的数字)
136. Single Number 除了一个数字,其他数字都出现了两遍. 用亦或解决,亦或的特点:1.相同的数结果为0,不同的数结果为1 2.与自己亦或为0,与0亦或为原来的数 class Solu ...
- koa2源码解读及实现一个简单的koa2框架
阅读目录 一:封装node http server. 创建koa类构造函数. 二:构造request.response.及 context 对象. 三:中间件机制的实现. 四:错误捕获和错误处理. k ...
- idea注册码到期,破解idea
http://idea.lanyus.com/
- 软工+C(2): 分数和checklist
// 上一篇:题目设计.点评和评分 // 下一篇:超链接 教学里,建立清晰明确的评分规则并且一开始就公布,对于教师.助教.学生都是重要的. 公布时机 在课程开始的时候,就需要确定并公布评分机制,随着课 ...
- 软工+C(3): 超链接
// 上一篇:分数和checklist // 下一篇:Alpha/Beta换人 注:平常看文章,总有能和构建之法,软件工程相关的链接,增量记录,也可以通过在其他人博客的交流中使用相关的超链接,在使用中 ...
- 乐观锁vs悲观锁
引言 为什么需要锁(并发控制) 在并发的环境中,会存在多个用户同时更新同一条数据,这时就会产生冲突. 冲突结果: 丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失. 脏读:当一个事 ...
- CodeForces 91B Queue
题目链接:http://codeforces.com/contest/91/problem/B 题目大意: 有n头大象排队买票,第i头大象的年龄为ai,如果有比他年轻的大象排在他前面,这头大象就会非常 ...
- JAVA多线程-内存模型、三大特性、线程池
一.线程的三大特性 原子性.可见性.有序性 1)原子性,即一个操作或者多个操作要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行.原子性其实就是保证数据一致.线程安全一部分. 2)可见性,即 ...