0
点赞
收藏
分享

微信扫一扫

Javastream流拿出某列值的字段值返回一个list

如果你想从一个对象列表中提取某个字段的值,并返回一个包含这些值的列表,可以使用Java 8+中的Stream流和map操作来实现。以下是一个示例代码:


import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class ExtractField {
    public static void main(String[] args) {
        List<Person> personList = Arrays.asList(
                new Person("Alice", 25),
                new Person("Bob", 30),
                new Person("Charlie", 35)
        );
        
        List<String> nameList = personList.stream()
                .map(Person::getName)
                .collect(Collectors.toList());
        System.out.println(nameList);
    }

    static class Person {
        private String name;
        private int age;
        public Person(String name, int age) {
            this.name = name;
            this.age = age;
        }

        public String getName() {
            return name;
        }

        public int getAge() {
            return age;
        }
    }
}

在上述示例代码中,我们创建了一个Person类来表示人员信息。每个Person对象都有名字 name 和年龄 age 两个字段。

通过使用Stream流,我们可以对personList进行处理。map操作将每个Person对象映射为其name字段的值,然后使用collect操作将其收集到一个新的列表中。

最后,我们将nameList打印出来,它包含了从personList中提取出来的所有名字值的列表。

你可以根据需要修改示例代码,将Person类替换为你实际的对象类型,并调整map操作来提取你想要的字段值。

举报

相关推荐

0 条评论