// "Collapse loop with stream 'collect()'" "true-preview" import java.util.*; import java.util.stream.Collectors; public class Main { private Map> test(String... list) { HashMap> map = Arrays.stream(list).filter(Objects::nonNull).collect(Collectors.groupingBy(String::length, HashMap::new, Collectors.mapping(String::trim, Collectors.toList()))); return map; } public static void main(String[] args) { System.out.println(new Main().test("a", "bbb", null, "cc", "dd", "eedasfasdfs", "dd")); } }