[Kotlin] Collections 조건 함수

Subeen·2023년 11월 27일
0

Kotlin 문법

목록 보기
6/23

지난번에는 컬렉션에서 자주 사용되는 함수인 map, filter, zip을 정리하였는데 오늘은 컬렉션의 조건 함수에 대해 정리하고자 한다. 조건 함수인 all, any, none은 컬렉션의 특징을 간단히 파악하고자 할 때 사용되며 함수들의 조건식을 지정할 때는 람다식을 사용한다.

Collections 조건 함수

all

  • all() 함수는 컬렉션의 모든 원소가 조건을 만족할 때 true를 반환한다.
val list = listOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
println(list)  // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
val all1 = list.all { it > 0 } // 리스트의 모든 원소가 0보다 큰지 확인 
println(all1)  // true

val all2 = list.all { it % 2 == 0 } // 리스트의 모든 원소가 2의 배수인지 확인 
println(all2)  // false

any

  • any() 함수는 컬렉션의 원소 중 조건을 만족하는 원소가 하나라도 있을 때 true를 반환한다.

    같은 리스트와 조건(it % 2 == 0) 으로 봤을 때 all은 리스트의 모든 원소가 2의 배수가 아니므로 false를 반환하였고 any는 2의 배수인 원소가 1개 이상이기에 true를 반환하였다.

val list = listOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
println(list)  // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
val any1 = list.any { it % 2 == 0 }  // 리스트에서 2의 배수인 원소가 1개 이상인지 확인
println(any1)  // true

val any2 = list.any { it > 10 }
println(any2)  // false

none

  • none() 함수는 컬렉션의 모든 원소가 조건을 만족시키지 못할 경우 true를 반환하며 한 개라도 조건을 만족하는 원소가 있을 경우 false를 반환한다.
val list = listOf("apple", "banana", "peach")
println(list)  // [apple, banana, peach]
    
val none1 = list.none { it.length > 5 }  // 모든 문자열의 길이가 5 이하일 경우 true 반환
println(none1)  // false
    
val none2 = list.none { it.contains('d') } // 모든 문자열이'd'를 포함하지 않을 경우 true 반환
println(none2)  // true
profile
개발 공부 기록 🌱

0개의 댓글