📜  java 流获取一个字段的列表 - Java (1)

📅  最后修改于: 2023-12-03 15:16:01.514000             🧑  作者: Mango

Java 流获取一个字段的列表

在 Java 中,我们经常需要从一个对象列表中提取特定字段的值,以便进一步处理。使用流可以让这个操作更加简单和优雅。

以下是一个演示如何使用流获取一个字段的列表的示例代码:

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

public class Main {
    public static void main(String[] args) {
        List<Person> people = Arrays.asList(
                new Person("John", 30),
                new Person("Mary", 25),
                new Person("Bob", 40)
        );

        List<Integer> ages = people.stream()
                .map(Person::getAge) // 提取每个 Person 对象的 age 字段
                .collect(Collectors.toList());

        System.out.println(ages); // 输出 [30, 25, 40]
    }
}

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 类,包含 name 和 age 两个字段,然后创建了一个人员列表。接着,我们使用 stream() 方法将这个列表转化为流,并使用 map() 方法提取每个 Person 对象的 age 字段。最后,我们使用 collect() 方法将这些 age 值收集起来,并转换为一个 List。

这样,我们就成功地获取了一个字段的列表。

总结:

  • 使用 stream() 方法将列表转化为流。
  • 使用 map() 方法提取每个对象的特定字段。
  • 使用 collect() 方法将结果收集起来并转换为一个列表。

以上就是 Java 中使用流获取一个字段的列表的示例代码和简介。