pickBy
술어에 맞는 엔트리만 남긴 Map의 복사본을 반환합니다.
Map<K, V> pickBy<K, V>(bool Function((K, V) entry) f, Map<K, V> map)
강의
pickBy는 omitBy를 그대로 뒤집은 함수이며,
호출 방식도 똑같습니다. 술어는 엔트리마다 (K, V) 레코드
하나를 받으므로 키는 e.$1, 값은 e.$2로
꺼내 씁니다. 술어가 true를 반환한 엔트리만 결과에
남습니다.
설정 값이나 기능 플래그가 담긴 맵에서 "지금 필요한 것들"만 골라낼 때 자주 씁니다 — 활성화된 플래그, 특정 접두사가 붙은 키, 임계값을 넘는 값처럼요. 엔트리를 하나씩 도는 반복문을 직접 쓸 필요가 없습니다.
데모 1 · 기본
데모 2 · 키를 기준으로 걸러내기
직접 해 보기
연습: pickBy로 값이 true인 엔트리만 남겨 보세요.
관련 항목:
omitBy — 그 반대: 술어로 제거합니다 ·
pick — 고정된 키 목록으로 남깁니다 ·
matches — 모양 비교용으로 바로 쓸 수 있는 술어 ·
compactObject — "null을 걷어내는" 용도로 특수화된 pickBy