본문 바로가기
Jave & Kotlin

Kotlin - first, last 함수 (firstOrNull & lastOrNull)

by devLog by Ronnie's 2022. 6. 14.

들어가며


코틀린 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 함수를 쓰는 것을 추천한다.

 

 

 

 

 

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

 

 

 

 

 

 

댓글