알고리즘/java

<java> map 의 사용

잼추 2024. 6. 1. 00:40

Key, value 값으로 이루어진 Collector 이다 
key는 중복 될 수 없다.

 

  • stream 을 사용한 작성
words.stream() .collect(Collectors.groupingBy(Function.identity(), Collectors.counting()))

 

  • map의 stream 사용
    • entrySet을 빼서 사용
map.entrySet().stream().filter(i -> i.getValue() == n)//개수 같은거만 filter
    .map(Map.Entry::getKey)//키만 빼서
    .sorted()
    .collect(Collectors.toList());//정렬

 

  • map의 sort
    • 일반적으로 안되지만 stream 은 가능
map.entrySet().stream()
    .sorted(Map.Entry.comparingByKey())
    .collect(Collectors.toMap(i -> (i.getKey()), i->(i.getValue())));

 

사용예시!!

list에 포함된 개수(value)대로 map 작성

일반적으로 getOrDefault(key, defalutValue) 사용

value 값이 알아보기 편해짐

String key = "new";
int value = map.get(num) = null ? 1 : map.get(num);

map.put(key, value);