While rather impatiently waiting for Java 8 release and after reading brilliant \'State of the Lambda\' article from Brian Goetz I noticed that function composition was not
There is one flaw in using compose
and andThen
. You have to have explicit variables, so you can't use method references like this:
(Person::getAddress).andThen(Address::getCountry)
It won't be compiled. What a pity!
But you can define an utility function and use it happily:
public static Function compose(Function f1, Function f2) {
return f1.andThen(f2);
}
compose(Person::getAddress, Address::getCountry)