如何使用java stream将某个类的列表转换为该类的任何一个属性的列表/集合?

如何使用java stream将某个类的列表转换为该类的任何一个属性的列表/集合?,java,list,class,set,java-stream,Java,List,Class,Set,Java Stream,我有一节课 class Student{ int id; String name; public static void main(String args[]){ Student s1=new Student(); System.out.println(s1.id); System.out.println(s1.name); } } 我有一份班级学生名单,比如说,列出100人的学生名单 我想流式传输所有学生的id,并将其保存在一个集合中,一个简单

我有一节课

class Student{  
int id; 
 String name;   
 public static void main(String args[]){   
  Student s1=new Student();
  System.out.println(s1.id); 
  System.out.println(s1.name);  
 }  
} 
我有一份班级学生名单,比如说,
列出100人的学生名单

我想流式传输所有学生的id,并将其保存在一个集合中,一个简单的方法是使用for循环,有人能告诉我如何使用java流API实现相同的方法吗; Set studentId=students.stream() .map(s->s.id) .collect(收集器.toSet());
如果您的Students对象具有ID的getter方法,您可以直接:

公共班级学生{
私有int-id;
公共int getId(){
返回此.id;
}
}
Set studentId=students.stream()
.map(Student::getId)/
Set
而不是
Set