繁体   English   中英

使用Java Streams将Java ArrayList覆盖到Vector

[英]Coverting Java ArrayList to Vector using java Streams

我知道这是一个简单的问题。

但是可以使用Java Streams API转换给定的对象List<Person>并将其转换为Vector<PersonName>

public class Person {        
     String name;
     String lastName;
     int age;
     float salary;
}

public class PersonName {
     String name;
     String lastName;
}

您应该真正使构造函数和/或使PersonName扩展Person 但是这是不使用任何一种的解决方案:

ArrayList<Person> list = ...;
Vector<PersonName> vect = list.stream().map(t -> {
    PersonName name = new PersonName();
    name.lastName = t.lastName;
    name.name = t.name;
    return name;
}).collect(Collectors.toCollection(Vector::new));

PersonName类型创建两个参数的构造函数,然后可以执行以下操作:

Vector<PersonName> resultSet =
               peopleList.stream()
                         .map(p -> new PersonName(p.getName(), p.getLastName()))
                         .collect(Collectors.toCollection(Vector::new));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM