如何进行函数组合?

10 浏览
0 Comments

如何进行函数组合?

在焦急地等待Java 8发布之后,我读了Brian Goetz的杰出的“Lambda状态”文章后,我注意到其中没有涉及到函数组合。

根据上述文章,在Java 8中应该有以下可能性:

// 有Address和Person两个类

public class Address {

private String country;

public String getCountry() {

return country;

}

}

public class Person {

private Address address;

public Address getAddress() {

return address;

}

}

// 我们应该能够像下面这样引用它们的方法

Function personToAddress = Person::getAddress;

Function addressToCountry = Address::getCountry;

现在,如果我想将这两个函数组合起来,形成一个将Person映射到国家的函数,我该如何在Java 8中实现这一点?

0