본문 바로가기

[Kotlin] isNullOrBlank vs isNullOrEmpty 헷갈리지말자

@hyeon.s2023. 8. 30. 18:30

오늘 포스팅에서는 string의 null과 공백을 비교하는 비슷하지만 다른 두 메서드에 대해서 알아보고자 한다.

아래 예시를 통해서 두 메서드의 차이를 알아보자.

    var a = "string"
    var b = "hyeon"
    var c = null
    var d = ""
    var e = "                 "

isNullOrBlank

fun CharSequence?.isNullOrBlank(): Boolean

isNullOrBlank는 string 값이 null이거나 공백으로만 채워진 경우 true를 반환하는 함수 이다.

위 예시 string에 isNullOrBlank 메서드를 사용하면 출력값은 다음과 같다.

    var a = "string"
    var b = "hyeon"
    var c = null
    var d = ""
    var e = "                 "
    println(a.isNullOrBlank()) //false
    println(b.isNullOrBlank()) // false
    println(c.isNullOrBlank()) // flase
    println(d.isNullOrBlank()) // true
    println(e.isNullOrBlank()) // true

isNullOrEmpty

fun CharSequence?.isNullOrEmpty(): Boolean

isNullOrEmpty는 string이 null이거나 ""와같이 비어있는 경우 true를 반환하는 함수이다.

위 예시 string에 isNullOrEmpty 메서드를 사용하면 출력값은 다음과 같다.

    var a = "string"
    var b = "hyeon"
    var d = ""
    var e = "                 "
    println(a.isNullOrEmpty()) //false
    println(b.isNullOrEmpty()) // false
    println(d.isNullOrEmpty()) // true
    println(e.isNullOrEmpty()) // false

isNullOrBlank 와 isNullOrEmpty 비교


    // 널 스트링
     var c : String? = null
    println(c.isNullOrBlank()?.toString())  //true
    println(c.isNullOrEmpty()?.toString())  //true

	// 데이터 스트링
    var a = "string"
    println(a.isNullOrBlank()?.toString())  //false
    println(a.isNullOrEmpty()?.toString())  //false

	// 빈 문자열 스트링
    var d = ""
    println(d.isNullOrBlank()?.toString())  //true
    println(d.isNullOrEmpty()?.toString())  //true

	// 공백 스트링
    var e: String = "      "
    println(e.isNullOrBlank()?.toString())  //true
    println(e.isNullOrEmpty()?.toString())  //false

 

'Language > Kotlin' 카테고리의 다른 글

[Kotlin] 코틀린의 sealed class 란?  (0) 2023.08.15
[Kotlin 문법] 스코프함수  (0) 2023.01.06
[Kotlin 문법] 오버라이딩과 추상화  (0) 2023.01.06
[Kotlin] 클래스와 상속  (0) 2023.01.06
hyeon.s
@hyeon.s :: 개발로그
목차