💡 Kotlin

[Kotlin] ifEmpty

콩드로이드 2025. 3. 31. 23:30

아주 편한 인라인 함수가 있어서 부랴부랴 포스팅합니다 

kotlin 버전 1.3 이상부터 사용가능해요

 

ifEmpty

inline fun <C : Array<*>, R, R> C.ifEmpty(defaultValue: () -> R): R
inline fun <C : Collection<*>, R, R> C.ifEmpty(defaultValue: () -> R): R
inline fun <M : Map<*, *>, R, R> M.ifEmpty(defaultValue: () -> R): R

 

만약 이 배열/컬렉션/맵이 비어 있지 않으면 이 배열/컬렉션/맵 을 반환하고, 비어 있으면 defaultValue 함수를 호출한 결과를 반환

fun main() {
    val myArray: Array<Int> = arrayOf() 

 
    val defaultValue = listOf(42)

    val result = myArray.toList().ifEmpty { defaultValue }

    println(result) // 42가 출력됩니다 ~~ 
}

 

if else 안 써도 되니까 편한 거 같아요..! 또 괜찮은 함수를 발견하면 줍줍해오겠습니다