/* * 기본적인 루프 */ map.forEach((k, v) -> System.out.println("key: " + k + ", value: " + v)); map.forEach((k,v) -> { System.out.println("key: " + k + ", value: " + v) }); map.entrySet().forEach((e) -> System.out.println("key: " + e.getKey() + ", value: " + e.getValue())); map.keySet().forEach((k) -> System.out.println("key: " + k)); map.values().forEach((v) -> System.out.println("value: " + v)); /* * Map내 각 요소의 value를 가공할 때 사용 */ Map<String, String> map = map.replaceAll((k,v) -> StringUtil.trim(v)); /* * 기존 Map의 entry 중 조건에 맞지 않는 것을 필터링하여 새로운 Map을 리턴 받는다. */ Map<String, Integer> map = map.entrySet().stream() .filter(e -> { boolean removed = e.getValue() > 10; if(removed) { log.debug("## 필터링시 제거된 레코드: {}", e); } return (! removed); }) .collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue())); /* * Set 의 요소를 가공하여 다른 형태의 요소들을 가진 Set을 리턴한다. */ Set<String> set = set.stream() .map(el -> { String[] arr = el.split('@'); return arr[0]; }) .collect(Collectors.toSet());
Leave A Comment