ric*_*din 7 java refactoring intellij-idea java-7 java-8
我有一些使用Java 8功能编写的代码,这意味着流和lambdas.现在,我必须在使用Java 7的项目中重用这些代码.是否有可能使用IntelliJ自动重构代码?
例如,我必须将一些看起来如下的代码重构为一个简单的for/ while循环.
Arrays.stream(values)
.distinct()
.limit(2)
.count();
Run Code Online (Sandbox Code Playgroud)
是的,IntelliJ具有"使用循环替换流API链"重构选项.Alt+Enter在将光标放在Arrays.stream()方法上后按下它会弹出:
它将产生如下代码:
long count = 0L;
long limit = 2;
Set<Integer> uniqueValues = new HashSet<>();
for (int i : new int[]{1, 2, 3}) {
if (uniqueValues.add(i)) {
if (limit-- == 0) break;
count++;
}
}
System.out.println(count);
Run Code Online (Sandbox Code Playgroud)
对于工作选项,项目语言级别必须为8或更高.
| 归档时间: |
|
| 查看次数: |
402 次 |
| 最近记录: |