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