Java to Kotlin (17) - 컬렉션을 함수형으로 다루는 방법

이동명·2024년 6월 26일
0

kotlin

목록 보기
17/19
post-thumbnail

필터와 맵

아래는 오늘의 예시가 될 class입니다.

filter : 사과만 주세요!

필터에서 인덱스가 필요하다면?

map : 사과의 가격들을 알려주세요!

맵에서 인덱스가 필요하다면?

Mapping의 결과가 null이 아닌 것만 가져오고 싶다면?

다양한 컬렉션 처리 기능

모든 과일이 사과인가요?, 혹시 출고가 10,000원 이상의 과일이 하나라도 있나요? 의 요구사항들은 어떻게 구현할까 ?

all : 조건을 모두 만족하면 true 그렇지 않으면 false

none : 조건을 모두 불만족하면 true 그렇지 않으면 false

any : 조건을 하나라도 만족하면 true 그렇지 않으면 false

총 과일 개수가 몇 개인가요? , 낮은 가격 순으로 보여주세요, 과일이 몇 종류 있죠? 를 구현하려면 ?

count : 개수를 센다

sortedBy : (오름차순) 정렬을 한다

sortedByDescending : (내림차순) 정렬을 한다

distinctBy : 변형된 값을 기준으로 중복을 제거한다

첫번째 과일만 주세요! 마지막 과일만 주세요! 는 어떻게 구현할까 ?

first : 첫번째 값을 가져온다 (무조건 null이 아니어야함) firstOrNull : 첫번째 값 또는 null을 가져온다

last : 마지막 값을 가져온다 (무조건 null이 아니어야함)
lastOrNull : 첫번째 값 또는 null을 가져온다

List를 Map으로

과일이름 → List<과일> (Map이 필요해요)

id → 과일 (Map이 필요해요)

Key와 value를 동시에 처리할 수도 있습니다.

과일이름 → List<출고가> (Map이 필요해요)

id → 출고가 (Map이 필요해요)

Map에 대해서도 앞선 기능들을 대부분 사용할 수 있습니다.


profile
Web Developer

0개의 댓글