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);
Mapmaps=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(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。