在IntelliJ

时间:2018-03-24 20:35:51

标签: intellij-idea lambda autocomplete

如何让IntelliJ自动生成lambda表达式作为传递的参数?

enter image description here

我想要的是什么:

enter image description here

我看过问题How to autocomplete lambdas in IntelliJ IDEA?,但这似乎并没有产生我想要的结果。

1 个答案:

答案 0 :(得分:0)

正如Tagir Valeev在评论中已提到的,IntelliJ将自动生成lambda代码,但前提是ClickListener是(功能)接口。

E.g:

@FunctionalInterface
interface ClickListener {
  void listen();
}

class Clicker {
   void addClickListener(ClickListener listener){
      // ...
   }
}

然后,Intellij建议按Ctrl + Shift + Space

enter image description here

注意:对于@FunctionalInterface注释,Jav Doc

  

此注释是编译器将接口识别为功能接口的要求