// "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 test(List strings) { Map mapping = new HashMap<>(); for (String str : strings) { if (mapping.put(str.length(), str) != null) { throw new IllegalStateException("Duplicate key"); } } return mapping; } public static Map testMerge(List strings) { Map map = new HashMap<>(); for (String s : strings) { if (!s.isEmpty()) { map.merge(s.length(), s, String::concat); } } return map; } public static TreeMap testPut(List strings) { TreeMap map = new TreeMap<>(); for (String s1 : strings) { if (!s1.isEmpty()) { map.put(s1.length(), s1.trim()); } } return map; } public static TreeMap testSupplier(List strings) { TreeMap 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", ""))); } }