StreamToLoopInspection: fixed flatMap with method reference argument

This commit is contained in:
Tagir Valeev
2016-11-01 18:46:15 +07:00
parent 2fb544975c
commit 0ae5c0f1ae
10 changed files with 189 additions and 18 deletions
@@ -0,0 +1,23 @@
// "Replace Stream API chain with loop" "true"
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
private static List<String> test(List<List<String>> list) {
List<String> result = new ArrayList<>();
for (List<String> strings : list) {
for (String s : strings) {
result.add(s);
}
}
return result;
}
public static void main(String[] args) {
System.out.println(test(Arrays.asList(Arrays.asList("", "a", "abcd", "xyz"), Arrays.asList("x", "y"))));
}
}
@@ -0,0 +1,23 @@
// "Replace Stream API chain with loop" "true"
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main {
private static List<String> test(List<String[]> list) {
List<String> result = new ArrayList<>();
for (String[] strings : list) {
for (String s : strings) {
result.add(s);
}
}
return result;
}
public static void main(String[] args) {
System.out.println(test(Arrays.asList(new String[] {"", "a", "abcd", "xyz"}, new String[] {"x", "y"})));
}
}
@@ -0,0 +1,23 @@
// "Replace Stream API chain with loop" "true"
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import static java.util.Arrays.asList;
public class Main {
private static List<List<String>> test(List<List<List<String>>> list) {
List<List<String>> result = new ArrayList<>();
for (List<List<String>> lists : list) {
for (List<String> strings : lists) {
result.add(strings);
}
}
return result;
}
public static void main(String[] args) {
System.out.println(test(asList(asList(asList("a", "d")), asList(asList("c"), asList("b")))));
}
}
@@ -0,0 +1,16 @@
// "Replace Stream API chain with loop" "true"
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
private static List<String> test(List<List<String>> list) {
return list.stream().flatMap(Collection::stream).col<caret>lect(Collectors.toList());
}
public static void main(String[] args) {
System.out.println(test(Arrays.asList(Arrays.asList("", "a", "abcd", "xyz"), Arrays.asList("x", "y"))));
}
}
@@ -0,0 +1,16 @@
// "Replace Stream API chain with loop" "true"
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main {
private static List<String> test(List<String[]> list) {
return list.stream().flatMap(Stream::of).col<caret>lect(Collectors.toList());
}
public static void main(String[] args) {
System.out.println(test(Arrays.asList(new String[] {"", "a", "abcd", "xyz"}, new String[] {"x", "y"})));
}
}
@@ -0,0 +1,16 @@
// "Replace Stream API chain with loop" "true"
import java.util.List;
import java.util.stream.Collectors;
import static java.util.Arrays.asList;
public class Main {
private static List<List<String>> test(List<List<List<String>>> list) {
return list.stream().flatMap(List::stream).c<caret>ollect(Collectors.toList());
}
public static void main(String[] args) {
System.out.println(test(asList(asList(asList("a", "d")), asList(asList("c"), asList("b")))));
}
}