BaseStreamApiMigration: when deleting the initializer replace type with explicit if possible

Fixes IDEA-193618 Invalid code generated after "Can be replaced with 'collect' call"
This commit is contained in:
Tagir Valeev
2018-06-13 11:14:54 +07:00
parent 70e9d41615
commit f4839c89ea
3 changed files with 37 additions and 1 deletions
@@ -0,0 +1,12 @@
// "Fix all 'Loop can be collapsed with Stream API' problems in file" "true"
import java.util.*;
import java.util.stream.Collectors;
class Test {
public List<Integer> someMethod() {
ArrayList<Integer> listOfInteger;
Integer[] arrayOfInteger = {2, 4, 8};
listOfInteger = Arrays.stream(arrayOfInteger).filter(number -> number >= 4).collect(Collectors.toCollection(ArrayList::new));
return listOfInteger;
}
}
@@ -0,0 +1,15 @@
// "Fix all 'Loop can be collapsed with Stream API' problems in file" "true"
import java.util.*;
class Test {
public List<Integer> someMethod() {
var listOfInteger = new ArrayList<Integer>();
Integer[] arrayOfInteger = {2, 4, 8};
f<caret>or (var number: arrayOfInteger) {
if (number >= 4) {
listOfInteger.add(number);
}
}
return listOfInteger;
}
}