是否有可能让intellij始终以某种方式声明lambdas。
例如,有时intellij会将lambda重构为:
method(length, index -> { return null; })
在参数索引上使用块但没有括号。这使得很难及时调整。
我希望它总是使用这种语法:
method(length, (index) -> { return null; })
method(length, (Integer index) -> { return null; })
并且总是使用块,除非它是方法引用,即obj :: method。
可以这样做吗?
答案 0 :(得分:1)
这在IntelliJ 13中是不可能的(但也许在14?)。当然,您的解决方法是重构选项( Ctrl + Enter )“将Lambda表达式体扩展为{...}”。
你想要的有点像说,“我希望我的所有匿名类都是私有静态内部类,因为它更容易重构。”虽然如此,但不需要所有额外的语法;当你这样做时,IDE重构工具可以帮助你。