Java三种方法将List转换为Map的实例

网友投稿 357 2023-01-20


Java三种方法将List转换为Map的实例

1.for循环

import com.google.common.base.Function;

import com.google.common.collect.Maps;

import java.util.ArrjppvgHayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

public class ListToMap {

public static void main(String[] args) {

List userList = new ArrayList<>();

User user1 = new User();

user1.setId(1L);

user1.setAge("12");

User user2 = new User();

user2.setId(2L);

user2.setAge("13");

userList.add(user1);

userList.add(user2);

Map maps = new HashMap<>();

for (User user : userList) {

maps.put(user.getId(), user);

}

System.out.println(maps);

}

public static class User {

private Long id;

private String age;

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

public String getAge() {

return age;

}

public void setAge(String age) {

this.age = age;

}

@Override

public String toString() {

return "User{" +

"id=" + id +

", age='" + age + '\'' +

'}';

}

}

}

2.使用guava

Map maps = Maps.uniqueIndex(userList, new Function() {

@Override

public Long apply(User user) {

return user.getId();

}

});

3.使用JDK1.8

Map maps = userList.stream().collect(Collectors.toMap(User::getId, user -> user));

看来还是使用JDK 1.8方便一些。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:如何实现接口的方法(接口可以实现方法吗)
下一篇:Java垃圾回收之标记清除算法详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~