java8:来自另一个方法引用的方法引用
我想使用基于另一个方法引用的方法引用。这有点难以解释,所以我给你一个例子:
人.java
public class Person{
Person sibling;
int age;
public Person(int age){
this.age = age;
}
public void setSibling(Person p){
this.sibling = p;
}
public Person getSibling(){
return sibling;
}
public int getAge(){
return age;
}
}
给定一个列表,我想使用方法引用来获取其兄弟姐妹的年龄列表。我知道这可以像这样完成:Person
roster.stream().map(p -> p.getSibling().getAge()).collect(Collectors.toList());
但我想知道是否有可能做得更像这样:
roster.stream().map(Person::getSibling::getAge).collect(Collectors.toList());
在这个例子中,这并不是很有用,我只是想知道什么是可能的。