2015-06-17 142 views
4

嗨,我想从列表中检索学生的名字,我使用过滤方法,但它返回boolean,所以有没有其他方法可以这样做?从列表中返回特定元素

public class Main { 

    public static void main(String[] args) { 
     Collection<Student> students=new LinkedList<>(); 
     students.add(new Student("Add","Nitkons",01)); 
     students.add(new Student("Nina","Adinson",02)); 
     students.add(new Student("Mick","McDonald",05)); 
     students.add(new Student("Anna","Lavrova",04)); 


     //doesnt work 
     Stream<Student> x=students.stream().filter(s->{return s.getName()}); 

    } 
} 

回答

9

您需要映射:

Stream<String> names = students.stream().map(Student::getName); 

,并收集了名的列表:

List<String> names = students.stream().map(Student::getName).collect(Collectors.toList());