集合的Stream操作学习笔记
摘自网络总结:
List<User> userList = new ArrayList();
User user1 = userList.stream().filter(user -> "zhangsan".equals(user.getUserName())).findAny().orElse(null);
1、filter为过滤,user代表userList中的一个User;
2、userList.stream().filter(user -> “zhangsan”.equals(user.getUserName()))表示过滤出userList中名字为zhangsan的user;
3、.findAny()表示将其中任意一个返回;【注意:在Java 8 Stream中, findFirst()返回Stream中的第一个元素,而findAny()返回Stream中的任何元素。】
4、.orElse(null)表示如果一个都没找到返回null。【orElse()中可以塞默认值。如果找不到就会返回orElse中你自己设置的默认值。】
集合框架Map之entrySet方法的使用
public static void main(String[] args) {
Map<Integer, String> map = new HashMap<Integer, String>();
map.put(8, "wangwu");
map.put(2, "lisi");
map.put(7, "zhangsan");
Set entrySet=map.entrySet();//entrySet()方法返回反应map键值的映射关系,存储在set集合中
Iterator it=entrySet.iterator();//使用迭代器获得每一个映射关系
while(it.hasNext()){
Map.Entry me=(Map.Entry) it.next();//映射关系类型为Map.Entry类型,是一个接口类型
System.out.println(me.getKey()+":::"+me.getValue());
// System.out.println(me.getValue());
}
}