例如,以下是标准模式
Function<Integer, Integer> powerOfTwo = new Function<Integer, Integer>() {
@Override
public Integer apply(Integer input) {
return (int) Math.pow(input, 2);
}
};
Run Code Online (Sandbox Code Playgroud)
实施申请有什么好处?写作会不会更清晰
Function<Integer, Integer> powerOfTwo = new Function<Integer, Integer>(Integer input) {
return (int) Math.pow(input, 2);
};
Run Code Online (Sandbox Code Playgroud)
是的,当然,但这就是Java语言的工作方式,至少在Java 8中引入lambda之前.这与Guava无关,而与Java语言有关.
从Java 8开始,你可以写
Function<Integer, Integer> powerOfTwo = input -> (int) Math.pow(input, 2);
Run Code Online (Sandbox Code Playgroud)
...但是如果你没有使用Java 8,那么语言的设计方式使得你必须编写第一个版本.
| 归档时间: |
|
| 查看次数: |
118 次 |
| 最近记录: |