当前位置: 代码迷 >> 综合 >> Java8 使用 stream().map().collect提取对象的某一列值
  详细解决方案

Java8 使用 stream().map().collect提取对象的某一列值

热度:52   发布时间:2023-12-23 03:11:47.0
        List<Person> list = new ArrayList<>();Person p1 = new Person("张三", 20, "江西");Person p2 = new Person("李四", 22, "北京");Person p3 = new Person("赵六", 26, "广东");list.add(p1);list.add(p2);list.add(p3);String str = list.stream().map(Person::getName).collect(Collectors.joining(","));System.out.println(str);//张三,李四,赵六//转list集合List<String> list2 = list.stream().map(Person::getName).collect(Collectors.toList());/*** 1、正常遍历* 张三* 李四* 赵六*/list2.forEach(s -> System.out.println(s.toString()));//2、条件遍历list2.forEach(c->{if(c.equals("张三")){System.out.println(c);}});//set集合Set<String> set = list.stream().map(Person::getName).collect(Collectors.toCollection(TreeSet::new));

  相关解决方案