Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用Stream获取一组实例变量_Java_Java Stream - Fatal编程技术网

Java 如何使用Stream获取一组实例变量

Java 如何使用Stream获取一组实例变量,java,java-stream,Java,Java Stream,我有一门课叫“改变”。这个类有两个名为format和description的字符串变量,带有普通的getter和setter 如果有ArrayList更改,如何使用Java Streams获取所有不同格式的集合?使用Streammap方法根据作为参数传递的方法获取字符串流,然后使用Streamcollect方法收集它 例如: public class Change { private String format; private String description;

我有一门课叫“改变”。这个类有两个名为format和description的字符串变量,带有普通的getter和setter

如果有ArrayList更改,如何使用Java Streams获取所有不同格式的集合?

使用Streammap方法根据作为参数传递的方法获取字符串流,然后使用Streamcollect方法收集它

例如:

public class Change {
    private String format;
    private String description;

    public Change(String format, String description) {
        this.format = format;
        this.description = description;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getFormat() {
        return format;
    }

    public void setFormat(String format) {
        this.format = format;
    }

    public static void main(String[] args) {
        List<Change> list = new ArrayList<>();
        list.add(new Change("format1", "descr1"));
        list.add(new Change("formatelse", "descrelse"));

        Set<String> formats = list.stream().map(Change::getFormat).collect(Collectors.toSet());
    }
}