1 import java.util.ArrayList; 2 import java.util.List; 3 import java.util.Map; 4 import java.util.Set; 5 import java.util.stream.Collectors; 6 import java.util.stream.Stream; 7 8 public class CollectDemo { 9 public static void main(String[] args) { 10 String[] names = {"Jamal", "Peter", "Soraya", "Kim", "Imani", 11 "Giorgio", "Alan", "Stacy", "Michelle", "jamal"}; 12 System.out.println("The number of characters for all names: " + 13 Stream.of(names).parallel().collect(StringBuilder::new, 14 StringBuilder::append, StringBuilder::append).length()); 15 16 List<String> list = Stream.of(names).collect(ArrayList::new, 17 ArrayList::add, ArrayList::addAll); 18 System.out.println(list); 19 20 list = Stream.of(names).collect(Collectors.toList()); 21 System.out.println(list); 22 23 Set<String> set = Stream.of(names).map(e -> e.toUpperCase()). 24 collect(Collectors.toSet()); 25 System.out.println(set); 26 27 Map<String, Integer> map = Stream.of(names).collect( 28 Collectors.toMap(e -> e, e -> e.length())); 29 System.out.println(map); 30 31 System.out.println("The total number of characters is " + 32 Stream.of(names). 33 collect(Collectors.summingInt(e -> e.length()))); 34 35 java.util.IntSummaryStatistics stats = Stream.of(names). 36 collect(Collectors.summarizingInt(e -> e.length())); 37 System.out.println("Max is " + stats.getMax()); 38 System.out.println("Min is " + stats.getMin()); 39 System.out.println("Average is " + stats.getAverage()); 40 } 41 }