Files
openide/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/streamToLoop/afterToMap.java

58 lines
1.9 KiB
Java

// "Fix all 'Stream API call chain can be replaced with loop' problems in file" "true"
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
public class Main {
public static Map<Integer, String> test(List<String> strings) {
Map<Integer, String> mapping = new HashMap<>();
for (String str : strings) {
if (mapping.put(str.length(), str) != null) {
throw new IllegalStateException("Duplicate key");
}
}
return mapping;
}
public static Map<Integer, String> testMerge(List<String> strings) {
Map<Integer, String> map = new HashMap<>();
for (String s : strings) {
if (!s.isEmpty()) {
map.merge(s.length(), s, String::concat);
}
}
return map;
}
public static TreeMap<Integer, String> testPut(List<String> strings) {
TreeMap<Integer, String> map = new TreeMap<>();
for (String s1 : strings) {
if (!s1.isEmpty()) {
map.put(s1.length(), s1.trim());
}
}
return map;
}
public static TreeMap<Integer, String> testSupplier(List<String> strings) {
TreeMap<Integer, String> map = new TreeMap<>();
for (String s1 : strings) {
if (!s1.isEmpty()) {
map.putIfAbsent(s1.length(), s1);
}
}
return map;
}
public static void main(String[] args) {
System.out.println(testMerge(Arrays.asList()));
System.out.println(testMerge(Arrays.asList("a", "bbb", "cc", "d", "eee", "")));
System.out.println(testPut(Arrays.asList()));
System.out.println(testPut(Arrays.asList("a", "bbb", "cc", "d", "eee", "")));
System.out.println(testSupplier(Arrays.asList()));
System.out.println(testSupplier(Arrays.asList("a", "bbb", "cc", "d", "eee", "")));
System.out.println(test(Arrays.asList()));
System.out.println(test(Arrays.asList("a", "bbb", "cc", "d", "eee", "")));
}
}