Java三种方法将List转换为Map的实例
1.for循环
importcom.google.common.base.Function; importcom.google.common.collect.Maps; importjava.util.ArrayList; importjava.util.HashMap; importjava.util.List; importjava.util.Map; publicclassListToMap{ publicstaticvoidmain(String[]args){ ListuserList=newArrayList<>(); Useruser1=newUser(); user1.setId(1L); user1.setAge("12"); Useruser2=newUser(); user2.setId(2L); user2.setAge("13"); userList.add(user1); userList.add(user2); Map maps=newHashMap<>(); for(Useruser:userList){ maps.put(user.getId(),user); } System.out.println(maps); } publicstaticclassUser{ privateLongid; privateStringage; publicLonggetId(){ returnid; } publicvoidsetId(Longid){ this.id=id; } publicStringgetAge(){ returnage; } publicvoidsetAge(Stringage){ this.age=age; } @Override publicStringtoString(){ return"User{"+ "id="+id+ ",age='"+age+'\''+ '}'; } } }
2.使用guava
Mapmaps=Maps.uniqueIndex(userList,newFunction (){ @Override publicLongapply(Useruser){ returnuser.getId(); } });
3.使用JDK1.8
Mapmaps=userList.stream().collect(Collectors.toMap(User::getId,user->user));
看来还是使用JDK1.8方便一些。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对毛票票的支持。如果你想了解更多相关内容请查看下面相关链接
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。