为Java 8 lambda默认配置Intellij

时间:2014-08-28 08:38:13

标签: java intellij-idea

是否有可能让intellij始终以某种方式声明lambdas。

例如,有时intellij会将lambda重构为:

method(length, index -> { return null; })

在参数索引上使用块但没有括号。这使得很难及时调整。

我希望它总是使用这种语法:

method(length, (index) -> { return null; })

method(length, (Integer index) -> { return null; })

并且总是使用块,除非它是方法引用,即obj :: method。

可以这样做吗?

1 个答案:

答案 0 :(得分:1)

这在IntelliJ 13中是不可能的(但也许在14?)。当然,您的解决方法是重构选项( Ctrl + Enter )“将Lambda表达式体扩展为{...}”。

你想要的有点像说,“我希望我的所有匿名类都是私有静态内部类,因为它更容易重构。”虽然如此,但不需要所有额外的语法;当你这样做时,IDE重构工具可以帮助你。