当前位置:   article > 正文

java取出list中的某几个属性组成一个新的集合的几种方式_list抽取属性生成另外一个list

list抽取属性生成另外一个list

我用了三种方式,1:forEach循环;2:for循环;3:stream方法

  1. package org.springblade.test;
  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import java.util.Map;
  6. import java.util.stream.Collectors;
  7. public class Test {
  8. @org.junit.jupiter.api.Test
  9. public void aaa() {
  10. User user1 = new User("张三", 10, 1);
  11. User user2 = new User("李四 ", 11, 1);
  12. User user3 = new User("王五", 12, 0);
  13. List<User> users = new ArrayList<>();
  14. users.add(user1);
  15. users.add(user2);
  16. users.add(user3);
  17. //我这里都转为了List<Map<String, Object>>数组,也可以转换为一个新的实体类(自行创建)
  18. //使用forEach循环转化
  19. List<Map<String, Object>> infosFromForEach = new ArrayList<>();
  20. users.forEach(user -> {
  21. Map<String, Object> singleMap = new HashMap<>();
  22. singleMap.put("age", user.getAge());
  23. singleMap.put("gender", user.getGender());
  24. infosFromForEach.add(singleMap);
  25. });
  26. //使用for循环转化
  27. List<Map<String, Object>> infosFromFor = new ArrayList<>();
  28. for (User user : users) {
  29. Map<String, Object> singleMap = new HashMap<>();
  30. singleMap.put("age", user.getAge());
  31. singleMap.put("gender", user.getGender());
  32. infosFromFor.add(singleMap);
  33. }
  34. //使用stream流实现转换
  35. List<Map<String, Object>> collect = users.stream().map(user -> {
  36. Map<String, Object> singleMap = new HashMap<>();
  37. singleMap.put("age", user.getAge());
  38. singleMap.put("gender", user.getGender());
  39. return singleMap;
  40. }).collect(Collectors.toList());
  41. }
  42. }
  43. class User {
  44. //姓名
  45. private String name;
  46. //年龄
  47. private Integer age;
  48. //性别:0:女;1:男
  49. private Integer gender;
  50. public User() {
  51. }
  52. public User(String name, Integer age, Integer gender) {
  53. this.name = name;
  54. this.age = age;
  55. this.gender = gender;
  56. }
  57. public String getName() {
  58. return name;
  59. }
  60. public User setName(String name) {
  61. this.name = name;
  62. return this;
  63. }
  64. public Integer getAge() {
  65. return age;
  66. }
  67. public User setAge(Integer age) {
  68. this.age = age;
  69. return this;
  70. }
  71. public Integer getGender() {
  72. return gender;
  73. }
  74. public User setGender(Integer gender) {
  75. this.gender = gender;
  76. return this;
  77. }
  78. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/323278
推荐阅读
相关标签
  

闽ICP备14008679号