May*_*ron 17 java lambda intellij-idea java-8 method-reference
我的原始代码是这样的:
private static void onClicked(MouseEvent event) {
// code to execute
}
// somewhere else in the program:
setOnMouseClicked(event -> SomeClass.onClicked(event));
Run Code Online (Sandbox Code Playgroud)
但IntelliJ说"可以用方法参考替换",我不太清楚该怎么做.我以为我会这样做:
setOnMouseClicked(event -> SomeClass::onClicked);
Run Code Online (Sandbox Code Playgroud)
但后来告诉我"虚空不是一个功能界面",但我不想返回任何东西.我只想要执行处理程序.我怎样才能解决这个问题?
谢谢!
Era*_*ran 39
您正在将lambda表达式与方法引用混合使用.
更改
setOnMouseClicked(event -> SomeClass::onClicked);
Run Code Online (Sandbox Code Playgroud)
至
setOnMouseClicked(SomeClass::onClicked);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8442 次 |
| 最近记录: |