Java List取出某个属性的List
时间: 2023-08-16 10:06:33 浏览: 84
如果您想要从Java的List中获取特定对象属性的List,则可以使用以下代码:
假设我们有一个`Person`类,其中包含`name`和`age`属性:
```java
public 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;
}
}
```
现在我们有一个`List`,其中包含多个`Person`对象:
```java
List<Person> personList = new ArrayList<>(Arrays.asList(
new Person("Alice", 25),
new Person("Bob", 30),
new Person("Charlie", 35),
new Person("David", 40)
));
```
我们想要从`personList`中获取所有`Person`对象的`name`属性,可以使用以下代码:
```java
List<String> nameList = new ArrayList<>();
for (Person person : personList) {
nameList.add(person.getName());
}
System.out.println(nameList);
```
在上述代码中,我们遍历整个`personList`,并将每个`Person`对象的`name`属性添加到新的`List` `nameList`中。最后,我们打印`nameList`,它应该包含所有`Person`对象的`name`属性。
如果您使用的是Java 8或更高版本,您也可以使用Java Stream API更简洁地编写上述代码:
```java
List<String> nameList = personList.stream()
.map(Person::getName)
.collect(Collectors.toList());
System.out.println(nameList);
```
在上述代码中,我们通过调用`stream()`方法将`personList`转换为Java Stream,然后使用`map()`方法将每个`Person`对象转换为其`name`属性,最后使用`collect()`方法将结果收集到新的`List` `nameList`中。
阅读全文