1.目的
lambda表达式:(1)遍历list map ;
(2) 对list数据进行排序;
2.lambda遍历 list
list.stream().forEach(data ->{ System.out.println(data.getName()+"----"+data.getAge()); }); //lambda便利 list list.forEach(user -> { System.err.println("id:" + user.getId() + "----name:" + user.getName() + "----age:" + user.getAge()); }); |
![1b678e6ba35cb6e4511645469721ae69c17.jpg](https://oscimg.oschina.net/oscnet/1b678e6ba35cb6e4511645469721ae69c17.jpg)
3.lambda遍历 map
HashMap<String, Object> map = new HashMap<String,Object>();
map.put("msg1", "加油!");
map.put("msg2", "come on");
map.put("msg3", "成为最好的自己!");
//使用lambda遍历 map
map.forEach((k, v) -> {
System.err.println("msg : " + k + " value : " + v);
if ("msg2".equals(k)) {
System.out.println(v);
}
});
![ab3ade44d032b8bae640029c096d71f3bcc.jpg](https://oscimg.oschina.net/oscnet/ab3ade44d032b8bae640029c096d71f3bcc.jpg)
4.list 数据进行排序
package cn.guang; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; public class ListStudy { public static void main(String[] args) { User u = new User(); u.setId("1"); u.setName("zhangsan"); u.setAge(15); u.setOther("用户1"); u.setScore(22); User u2 = new User(); u2.setId("2"); u2.setName("李四"); u2.setAge(18); u2.setOther("用户2"); u2.setScore(19); User u3 = new User(); u3.setId("3"); u3.setName("王五"); u3.setAge(10); u3.setOther("用户3"); u3.setScore(100); User u4 = new User(); u4.setId("4"); u4.setName("小6"); u4.setAge(10); u4.setOther("用户4"); u4.setScore(45); List<User> list = new ArrayList<User>(); list.add(u); list.add(u2); list.add(u3); list.add(u4); //https://blog.csdn.net/goodlook0123/article/details/80607356 System.out.println("数据插入顺序输入----------------------------"); list.forEach(data ->{ System.out.println(data.getName()+"----"+data.getAge()+"---"); }); System.out.println("按照年龄正序 如果相同 按照分数正序----------------------------"); list.sort(Comparator.comparing(User::getAge).thenComparing(User::getScore)); // 按照年龄正序 如果相同 按照分数正序 for(User user:list){ System.err.println(user.getName()+"---"+user.getAge()); } System.out.println("先按照倒叙 如果相同比较成绩倒叙----------------------------"); // 先按照倒叙 如果相同比较成绩倒叙 Collections.sort(list, Comparator.comparing(User::getAge).thenComparing(User::getScore).reversed()); for(User user:list){ System.out.println(user.getName()+"---"+user.getAge()); } } } |
![75e9c0aaee057573d53bdf7a1a26aba79f9.jpg](https://oscimg.oschina.net/oscnet/75e9c0aaee057573d53bdf7a1a26aba79f9.jpg)