1. dropWhile: 조건을 만족하지 않는 요소를 만날 때까지 요소 제거
- 주어진 조건에 맞는 요소들은 drop 시키고 나머지를 리턴한다.
2. filter: 조건에 만족하는 요소들만 return
- 주어진 조건에 맞는 요소들만 포함시킨 새로운 Collections 객체 반환
- Map, List, Set 가능
- Map 같은 경우 람다표현식의 인자가 (key, value)로 이루어져 있음
🤔 dropWhile과 filter의 차이점 ❔❕
🔹 dropWhile은 주어진 조건에 맞지 않는 첫 요소부터 마지막 요소를 리턴한다.
(말그대로 나머지)
🔹 filter는 조건을 만족하는 모든 요소를 포함시켜 리턴한다.
🔑
dropWhile : 실시간으로 조건을 확인하며 데이터 필터링할 때
filter : 원본 컬렉션을 변경하지 않고 조건에 맞게 필터링할 때
3. filterIndexed: 인덱스와 값으로
- filter와 비슷함
- 람다표현식 인자가 (index, element)로 이루어져 있음
4. filterIsInstance: 특정 타입만
- 주어진 타입의 컬렉션 요소를 반환
- Collections.filterIsInstance< String >() -> 해당 요소가 문자열인 경우만 필터링
5. partition: 분할
- 조건에 맞는 요소와 아닌 요소를 분할하여 리턴
- 즉, 총 두 개의 객체를 반환
any, none, all
- any : 조건에 만족하는 요소 하나라도 있으면 true 반환
- none : 조건에 만족하는 요소가 없어야 true 반환
- all : 모든 요소가 조건에 만족해야 true 반환