使用stream流筛选出List集合中符合条件的实体对象
注意:使用findFirst()方法返回的是符合条件的第一个元素,使用findAny()方法在多线程并发访问下是符合条件的任意元素
示例:
public static void main(String[] args) { List<UserInfo> list = new ArrayList<>(); UserInfo info1 = new UserInfo("a","11"); UserInfo info2 = new UserInfo("b","22"); UserInfo info3 = new UserInfo("c","33"); list.add(info1); list.add(info2); list.add(info3); list.forEach(System.out::println); System.out.println("------------"); //筛选出符合条件的数据 UserInfo userInfo = list.stream().filter(s -> s.getUserName().equals("a")).findFirst().orElse(null); System.out.println(userInfo); }
结果:
UserInfo{userName='a', age='11'}UserInfo{userName='b', age='22'}UserInfo{userName='c', age='33'}------------UserInfo{userName='a', age='11'}进程已结束,退出代码0
来源地址:https://blog.csdn.net/skyxxy123/article/details/128739775