Android/Kotlin(2)
-
getOrElse, getOrNull
getOrElse : 참조할 값이 존재하지 않거나 잘못되었을 경우 지정한 Else 값을 반환받는다. getOrNull : 참조할 값이 존재하지 않거나 잘못되었을 경우 Null을 반환받는다. =============LIST================ val ml = mutableListOf(5, 4, 3, 2, 1) // println(ml[10]) // IndexOutOfBoundException println("1. ${ml.getOrNull(4) }") // index = 4는 존재하므로 ml[4]를 반환 println("2. ${ml.getOrNull(10) }") // index = 10는 없으므로 Null 반환 println("3. ${ml.getOrElse(10) { -1 } }") // i..
2022.05.22 -
고차 함수(Higher-order functions)
고차 함수(Higher-order functions) 함수는 다른 함수를 인수로 취할 수 있습니다. 다른 함수를 인수로 사용하는 함수를 고차 함수라고 합니다. 이 패턴은 자바에서 콜백 인터페이스를 사용할 때와 동일한 방식으로 구성요소 간에 통신하는 데 유용합니다. 다음은 고차 함수의 예입니다. fun stringMapper(str: String, mapper: (String) -> Int): Int { // Invoke function return mapper(str) } stringMapper() 함수는 전달된 String에서 Int 값을 파생하는 함수와 함께 String를 가져옵니다. 아래 예와 같이 다른 입력 매개변수를 충족하는 함수, 즉 String을 입력으로 사용하고 Int를 출력하는 함수와 S..
2022.05.21