▶ Nullable
Kotlin은 변수가 null값을 가질 수 있을지 없을지 선언할 수 있는 능력을 제공한다.
예를 들어, String으로 변수를 선언을 했을 시에는, 해당 변수에서는 null값을 사용할 수 없다. null값을 넣고 싶다면, 이때 등장하는 것이 nullable 개념이다. 끝에 물음표를 붙여서 String?으로 선언할 시에는 해당 변수의 값으로 null을 사용할 수 있게 바뀐다.
만약, Null값을 가질수도 있는 변수의 길이를 구한다고 가정을 하면, 예전에는 if문을 통해서 다음과 같이 나타내는 것이 정석이었다. 하지만, Kotlin에서는 ?를 활용해서 바로 길이를 구할 수 있다.
Safe call operator : 'let'을 활용하여, 변수가 null이 아닐 때 출력하게끔 만들 수도 있다.
▶ Elvis operator(엘비스 연산자) - ?:
해당 변수가 null이면 내가 지정한 값을 할당하게 만들어주는 연산자이다. 예를 들어, nullableName이 null값일 때, "Guest"가 할당되게끔 만드는 Elvis operator는 다음과 같다.
만약, 클래스에서 활용한다면 다음과 같은 활용이 가능하다. (user이라는 클래스에서 wife라는 클래스나 객체가 있는 예시)
wife 라는 값이 비어있는지, age라는 값이 비어있는지 확인 후, 비어있다면 0을 부여하는 코드의 예시이다.
▶ Not-null assertion operator(not null 단언 연산자) - !!
변수에 값이 있다고 확신할 때만 사용하는 연산자이다. 만약 nullableName값이 null인데 Not-null assertion operator을 통해서 소문자를 구하게 되면 다음과 같이 오류가 뜬다.
만약 값이 null이 아니라면 별일 없이 해당 명령의 수행이 가능하다.
'모바일 App 프로그래밍 > Kotlin' 카테고리의 다른 글
[Kotlin] OOP - 2 (0) | 2023.03.27 |
---|---|
[Kotlin] OOP - 1 (0) | 2023.03.24 |
[Kotlin] 흐름 제어문 (if, when, while, for) (0) | 2023.03.24 |
[Kotlin] 산술 연산자 (Arithmetic Operators) (0) | 2023.03.13 |
[Kotlin] 변수의 선언과 종류 (0) | 2023.03.12 |
댓글