28. Safe Cast, Unsafe Cast 연산자

2022. 3. 13. 01:08[Android APP] feat. Kotlin/Kotlin 언어 기초

특정 타입의 것을 다른 타입으로 캐스트 하는 것을 의미한다.

 

 

Unsafe cast 연산자 키워드

as

1. 어떤 때는 변수를 캐스트하지 못하고 예외 처리가 된다.

2. 불안전한 캐스트는 infix연산자 as에 의해 실행된다.

 

예제

물음표가 있는 Nullable String은 Nullable String이 아닌 것으로 캐스트될 수 없다.

따라서 예외처리가 된다.

 

 

Safe cast 연산자 키워드

as?

1. 한 타입으로 안전하게 캐스트하도록 도와준다.

2. 캐스팅할 수 없을 시 class cast exception 처리 대신에 null 값을 돌려준다.

 

예제

location이라는 변수는 any 타입이고 String값이 들어가 있다.

따라서 아래 캐스트를 진행할 때 String은 제대로 캐스트가 되지만 Int로 캐스트하면 null 값을 띄어준다.

 

반응형

'[Android APP] feat. Kotlin > Kotlin 언어 기초' 카테고리의 다른 글

30. 람다 표현식  (0) 2022.03.13
29. 예외처리 ( try-catch, finally)  (0) 2022.03.13
27. 중첩, 내부 클래스  (0) 2022.03.13
26. 접근 제한자  (0) 2022.03.13
25. 배열 리스트(Array List)  (0) 2022.03.13