Kotlin
[Kotlin 기초] 변수 / Null / Type / 연산자
hyunjuuun.dev
2024. 2. 24. 22:14
코틀린에서 변수 다루기
var과 val의 차이점
var
- variable의 약자
- 변할 수 있는 값을 담는 변수 선언 시 사용
val
- value의 약자
- 변하지 않는 값을 담는 변수 선언 시 사용
Kotlin에서 nullable 변수
- Nullable한 변수는 타입 뒤에 ?를 붙인다.
코틀린에서 Null 다루기
null 체크
- null이 아닌 경우에만 호출되는 Safe call 사용
- ex) str?.length (str이 null이면 null 리턴)
Elvis 연산자
- str?.length ?: 0
- str이 null인 경우 0 리턴
코틀린에서 Type 다루기
기본 타입
- Byte
- Short
- Int
- Long
- Float
- Double
- 부호 없는 정수들
기본 타입이 아닌 경우)
is
- java에서의 instance of
as Person
- java에서의 (Person) obj
Kotlin의 특이한 타입 3가지
- Any
- Unit
- Nothing
Any
- Java의 Object (모든 객체의 최상위 타입)
- 모든 Primitive Type의 최상위 타입도 Any
- null을 포함하고 싶다면 Any?로 표현
- Any에 equals / hashCode / toString 존재
Unit
- Java의 void
- void와 다르게 Unit은 그 자체로 타입 인자로 사용 가능
Nothing
- 함수가 정상적으로 끝나지 않았다는 사실 표현 (정상적으로 끝나지 않는 함수를 사용할 일이 흔하지 않긴 하다)
- 무조건 예외를 반환하는 함수 / 무한 루프 함수 등
fun fail(message: String): Nothing {
throw IllegalArgumentException(message)
}
동등성, 동일성
Java
- 동일성 비교 ==
- 동등성 비교 equals
Kotlin
- 동일성 비교 ===
- 동등성 비교 == (간접적으로 equals를 호출)
코틀린에 있는 특이한 연산자
in / !in
- 컬렉션이나 범위에 포함되어 있는지 여부 계산
a..b
- a부터 b까지 범위 객체 생성
참고)