Java8如何从一个list中获取某一元素集合
从一个list中获取某一元素集合
@Data
public class Person {
private String name;
private String age;
}
List<Person> list = new ArrayList<>();
Person person = new Person();
person.setName("1");
person.setAge(10);
list.add(person);
Person person1 = new Person();
person1.setName("1");
person1.setAge(10);
list.add(person);
//获取person里面所有年龄集合
List<String> ageList = list.stream().map(Person::getAge).collect(Collectors.toList());
提取出list中bean的某一属性
package com.demo;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class Test6 {
public static void main(String[] args) {
List<Student> stuList = new ArrayList<Student>();
Student st1 = new Student("123","aaa");
Student st2 = new Student("234","bbb");
Student st3 = new Student("345","ccc");
Student st4 = new Student("345","ccc");
stuList.add(st1);
stuList.add(st2);
stuList.add(st3);
stuList.add(st4);
//1.提取出list对象中的一个属性
List<String> stIdList1 = stuList.stream()
.map(Student::getId)
.collect(Collectors.toList());
stIdList1.forEach(s -> System.out.print(s+" "));
System.out.println();
System.out.println("----------");
//2.提取出list对象中的一个属性并去重
List<String> stIdList2 = stuList.stream()
.map(Student::getId).distinct()
.collect(Collectors.toList());
stIdList2.forEach(s -> System.out.print(s+" "));
}
}
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关文章