Eclipse Luna中的方法引用快捷方式转换

Method reference shortcut transformation in Eclipse Luna

在 Spring 工具套件中

(Version: 3.7.0.RELEASE
Build Id: 201506290649
Platform: Eclipse Luna SR2 (4.4.2))

是否有一条捷径可以从以下内容开始:

Function<String, Integer> func = str -> Integer.valueOf(str);

像这样:

Function<String, Integer> func =  Integer::valueOf;

(和向后)通过键盘快捷键?

我知道有Ctrl+1组合键,但是好像没有提供引用转换的方法,所以查询:

Select lambda 表达式 "str -> Integer.valueOf(str)" 并按 Ctrl-1。快速修复列表中的第一个条目应该类似于 "convert to method reference".

首先,您需要 Eclipse 4.5 或更高版本,因为那是 this particular assist 首次发布的时间。

接下来你应该避免变量上的 "unused" 警告,否则内容辅助将跳转到最近的警告/错误,而不是提出与当前代码中的任何问题无关的更改(严格来说这不是必要,但使下一步更容易)。

最后,您需要将光标定位在 -> 上,因为这是唯一可以明确识别 lambda 的语法。

另请参阅 4.5 "New-&-Noteworthy", Section on JDT 中的第一项。