例如,以下是标准模式
Function<Integer, Integer> powerOfTwo = new Function<Integer, Integer>() {
@Override
public Integer apply(Integer input) {
return (int) Math.pow(input, 2);
}
};
实施申请有什么好处?写
会不会更清晰Function<Integer, Integer> powerOfTwo = new Function<Integer, Integer>(Integer input) {
return (int) Math.pow(input, 2);
};
答案 0 :(得分:6)
是的,当然,但这就是Java语言的工作方式,至少在Java 8中引入lambda之前。这与Guava无关,而且与Java语言有关。
从Java 8开始,你可以写
Function<Integer, Integer> powerOfTwo = input -> (int) Math.pow(input, 2);
...但是如果您不是使用Java 8,那么语言的设计方式就会让您必须编写第一个版本。