이번에는 Kotlin에 Type에 대해서 정리하는 시간입니다.
Type
Kotlin은 Java와 다르게 Primitive Type을 지원하지 않는다.
그 이유는 모든 변수에 Null값이 들어 갈 수있기 때문이다.
그럼 Java와 Kotlin의 Type 변환은 어떻게 다를까?
Java와 Kotlin 형변환
Java와 Kotlin에 형변환은 명시적이지 않는냐 명시적이냐로 나뉜다.
- Java : 형변환이 암묵적으로 일어남
- Kotlin : 형변환이 명시적으로 일어남
Java 형변환
예를 들어 Integer를 Long에 넣는 코드가 있을 때
Integer number1 = 1;
Long number2 = number1;
Java는 암묵적으로 Integer를 Long으로 변환한 다음 넣어준다. (물론 Type을 명시할 수도 있다.)
Kotlin 형 변환
Java 똑같이 Integer를 Long에 넣는 코드가 있다고 했을 때
val number1 :Int= 1
val number2: Long = number1.toLong()
이렇게 명시적으로 있어야 Kotlin은 형변환을 할 수가 있다.
근데 여기서 Type에 Nullable이 붙으면 어떻게 될까?
val number1 :Int? = 1
val number2: Long = number1?.toLong() : 0L
그렇다면 지난 시간에 배웠던 Safe Call과 Elvis 연산자로 해결할 수 있다.
요약
- Kotlin은 Primitive Type을 지원하지 않는다.
- Kotlin에서 형변환은 명식적으로 이루어져야한다.
- 타입의 형변환에서 Nullable한 데이터가 들어올 수 있을 경우 Safe Call과 Elvis연산자로 해결 가능하다.
출처:
https://www.inflearn.com/course/java-to-kotlin/dashboard
자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의 | 최태현 - 인프런
최태현 | 이 강의를 통해 Kotlin 언어의 특성과 배경, 문법과 동작 원리, 사용 용례, Java와 Kotlin을 함께 사용할 때에 주의할 점 등을 배울 수 있습니다., 요즘 대세인 코틀린을 공부하고 싶다면?⭐ J
www.inflearn.com
'Kotlin > Basic' 카테고리의 다른 글
Kotlin은 Java와 무엇이 다른가? (4) - 제어문 (1) | 2024.09.16 |
---|---|
Kotlin은 Java와 무엇이 다른가? (4) - 연산자 (1) | 2024.09.13 |
Kotlin은 Java와 무엇이 다른가? (2) - Null (1) | 2024.09.12 |
Kotlin은 자바와 무엇이 다른가? (1) - 변수 (0) | 2024.09.10 |
Kotlin Deep Dive 시작 (0) | 2024.09.10 |