Java8 ——toMap重复Key和值为空指针异常 解决方法:重复替换,过滤掉值。

应用场景:过滤空的值,并重复的值覆盖。


List<User> userList=new Arraylist<User>():  
User user1=new User();
user1.setName("userName1");
user1.setAge(18);

User user2=new User();
user2.setName("userName2");
user2.setAge(18);

User user3=new User();
user3.setName("userName3");
user3.setAge(null);//空值

userList.add(user1);
userList.add(user2);
userList.add(user3);
Map<String, Integer> nameMap =userList.stream()
                        .filter(ss->ss.getAge()!=null)//过滤掉空的数据
                        .collect(  Collectors.toMap(User:: getName, 
                                User:: getAge, 
                                (value1, value2 )-> value2));

 

参考文档:https://mkyong.com/java8/java-8-streams-filter-examples/

https://blog.csdn.net/wangmuming/article/details/72747183?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章