들어가며
코틀린 first, last 함수에 대해서 정리한다.
first 함수 (firstOrNull)
코틀린에서의 first 함수는 컬렉션 인자 중에서 첫번째 인자를 리턴한다.
추가로 어떠한 조건을 만족하는 첫번째 인자를 리턴하는 구조도 가능하다.
firstOrNull 함수는 first 함수와 동일하면서 추가로 만족하는 것이 없다면 null을 리턴하도록 설계할때 사용한다.
first 함수 사용 방법
val people = listOf(Person(“Tom”, 24), Person(“dave”, 22))가 주어졌을 때
- 첫번째 인자 반환
people.first()
- 만족하는 첫번째 인자 반환
people.first{ name -> name.length < 4} —> 결과 Tom
- 만족하는 첫번째 인자 반환 or 없다면 null 반환
people.firstOrNull{ name -> name.length < 3 } —> 결과 Null (만족하는 값이 없으므로)
last 함수 사용 방법
- 마지막 인자 반환
people.last()
- 만족하는 마지막 인자 반환
people.first{ name -> name.last < 4} —> 결과 Tom
- 만족하는 마지막 인자 반환 or 없다면 null 반환
people.lastOrNull{ name -> name.length < 3 } —> 결과 Null (만족하는 값이 없으므로)
추가 팁 - firstOrNull
people.firstOrNull{ name -> name.last < 4} 와 people.find{ name -> name.last < 4} 의 결과 값은 같다.
find 함수도 해당 조건을 만족하는 첫번째 인자를 반환한다. 또한 만족하는 원소가 없다면 null 값을 반환한다.
그러므로 firstOrNull과 같다.
하지만 조건을 만족하는 원소가 없으면 null이 나온다는 사실을 더 명확히 하고 싶다면 find 함수보다는 firstOrNull 함수를 쓰는 것을 추천한다.
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
'Jave & Kotlin' 카테고리의 다른 글
Kotlin - 코틀린의 Unit 타입과 자바의 void 타입 차이 정리 (0) | 2022.08.24 |
---|---|
Kotlin - 코틀린의 동일성과 동등성 비교 (Java와 차이점) (0) | 2022.07.03 |
Kotlin - Data Class 정리 (feat. IntelliJ 사용시 DataClass 변경 테스트) (0) | 2022.04.03 |
Kotlin - MockMvc를 이용하여 REST API 테스트하기 (feat. Json Response) (0) | 2022.02.19 |
Kotlin - 코틀린에서의 Null (0) | 2022.01.25 |
댓글