달나라 노트

Kotlin - all, any, none 본문

Kotlin

Kotlin - all, any, none

CosmosProject 2021. 3. 15. 23:41
728x90
반응형

 

 

 

 

Original source = play.kotlinlang.org/byExample/01_introduction/01_Hello%20world

 

 

 

fun main() {
    var list_numbers = listOf(1, -1, 2, -2, 3, -3, 4, -4, 5, -5) // 1


    var var_all_even = list_numbers.all {x -> x % 2 == 0} // 2
    println(var_all_even)


    var var_all_lt_100 = list_numbers.all {it < 100} // 3
    println(var_all_lt_100)


    var var_any_negative = list_numbers.any {x -> x < 0} // 4
    println(var_any_negative)


    var var_any_gt_100 = list_numbers.any {it > 100} // 5
    println(var_any_gt_100)


    var var_none_even = list_numbers.none {x -> x % 2 == 0} // 6
    println(var_all_even)


    var var_non_lt_100 = list_numbers.none {it > 100} // 7
    println(var_non_lt_100)
}



-- Result
false // 1
true // 2
true // 3
false // 4
false // 5
true // 6

 

1. list를 생성합니다.

 

2. list에 all 함수를 적용하면 중괄호{} 안에 명시된 조건을 모든 요소가 만족할 경우 true, 하나라도 불만족할 경우 false를 리턴합니다.

list의 모든 요소는 짝수가 아니므로 false를 반환합니다.

(a % b는 a나누기 b의 나머지를 반환하는 operator 입니다.)

 

3. 마찬가지로 list에 존재하는 각각의 요소를 의미하는 it 키워드를 사용할 수 있으며 list_nubmers의 모든 요소가 100보다 작으므로 true를 반환합니다.

 

4. list에 any 함수를 적용하면 중괄호{} 안에 적힌 조건을 만족하는 요소가 하나라도 있다면 true, 조건을 만족하는 요소가 하나도 없으면 false를 반환합니다.

이 경우 0보다 작은 요소가 있으니 true를 반환합니다.

 

5. 모든 요소가 100보다 크지 않습니다. 즉, 모든 요소가 x > 100이라는 조건을 만족하지 못합니다. false를 반환합니다.

 

6. list에 none 함수를 적용하면 중괄호{} 안에 명시된 조건을 모든 요소가 만족시키지 못할 경우 true를 반환합니다. 하나라도 조건을 만족하는 요소가 있다면 false를 반환합니다.

이 경우 x % 2 == 0 조건을 만족하는 요소가 존재합니다.(2, 4 등)

따라서 false를 반환합니다.

 

7. 모든 요소가 it > 100 조건을 만족하지 못합니다. true를 반환합니다.

 

 

 

 

 

 

 

 

 

728x90
반응형

'Kotlin' 카테고리의 다른 글

Kotlin - first, last, firstOrNull, lastOrNull  (0) 2021.03.16
Kotlin - find, findLast  (0) 2021.03.15
Kotlin - map function  (0) 2021.03.15
Kotlin - filter function  (0) 2021.03.15
Kotlin - Map collection  (0) 2021.03.15
Comments