Java8: Map Operations

 1) Convert Key to lower case in java8

params = params.entrySet().stream()

        .collect(Collectors.toMap(e -> e.getKey().toUpperCase(), Map.Entry::getValue));
2) Sum of Map values:
params.values().stream().mapToInt(Integer::valueOf).sum());
3)converstion of hashmap into linked hashmap
params.entrySet().stream().collect(Collectors.toMap(Map.Entry::getKey,Map.Entry::getValue,
(e1,e2)->e2,LinkedHashMap::new));
4)Sorting map data
Map<Integer,Integer> params1 = params.entrySet().stream().sorted(Map.Entry.comparingByKey())
.collect(Collectors.toMap(Map.Entry::getKey,Map.Entry::getValue,
(e1,e2)->e2,LinkedHashMap::new));
5)Grouping by key,List of values
Map<Integer,List<String>> params=
users.stream().collect(Collectors.groupingBy(User::getId,
Collectors.mapping(User::getName,Collectors.toList())));
6)Group by in order
Map<String,Integer> params = Stream.of(str.split("")).collect(Collectors.toList()).stream().collect(Collectors.groupingBy(String::valueOf,
LinkedHashMap::new,Collectors.summingInt(e->1)));
7)Printkey values in map
params.keySet().forEach(va -> System.out.println(va));


Comments