코린이 탈출기
chapter 7.5 - 타입 변환 - casting 본문
casting이란 타입을 변환하거나 데이터의 형태를 임시로 바꾸는 경우를 의미합니다.
우선 타입 변환을 보겠습니다. 이는 하나의 클래스 변수를 다른 클래스인 것처럼 변신시키고 싶을 경우를 의미합니다.
예를 들면 Int를 String으로 또는 String을 Int로 바꾸는 경우를 의미합니다.
이렇게 바꾸는 것은 각각의 클래스마다 다른 형태로 변신시켜주는 함수들이 내장되어있습니다.
.to원하는 타입( )으로 사용하면 됩니다.
코드를 예시로 보여드리겠습니다.
Int를 String으로 바꾸겠습니다.
val num = 10 -> num.toString( )
이번에는 기본 클래스 외의 경우인 데이터의 형태를 바꾸면서 사용하는 것입니다.
설명은 미리 하지만 사용하는 것은 차후에 설명하겠습니다.
기본 클래스의 변형은 '.to원하는 타입( )'이었다면 기본 클래스 이외에 클래스의 경우에는 as를 사용합니다.
변경시킬 대상 as 변환해줄 타입으로 사용합니다.
예를 들면 intent.getSerializableExtra("이름표") as Room이 있습니다. 이 코드의 경우 다음 챕터에서 자세하게 다루겠습니다.
as의 경우에는 코드 작성 시 컴파일 에러가 발생하지 않아도 올바른 변신이 아니면 앱이 돌아가다가 죽는 경우도 있어서 유의해주어야 합니다.
코틀린에서는 Int, String 등 기본형끼리는 변환을 원할 시에는 as를 사용하는 것이 불가능합니다.
자바의 경우에는 기본형 변수의 캐스팅도 같은 문법을 사용하지만 코틀린에서는 as를 사용하여 기본형을 변환하게 작성하면 앱이 죽습니다.
즉, 코틀린의 경우에는 기본형을 캐스팅하는 방법과 그 외의 클래스를 캐스팅하는 방법이 다르다는 것 정도만 알고 기억해주시면 됩니다.
'인터넷 강의 > 클래스101 - 비전공자들을 위한 나만의 안드로이드 앱 만들기' 카테고리의 다른 글
| chapter 8.1 - 부동산 앱 화면 따라 만들기 (1) - 기초 화면 작성 (0) | 2021.05.24 |
|---|---|
| chapter 7.6 - 반복문(For 문) + ArrayList 개념 (0) | 2021.05.21 |
| chapter 7.4 - null에 대한 이해 (0) | 2021.05.18 |
| chapter 7.3 - 코틀린 문법 + 객체지향개념 (2) - 상속 개념 이해, 활용하기 (0) | 2021.05.17 |
| chapter 7.2 - 코틀린 문법 + 객체지향개념 (1) - 생성자 이용하기 (0) | 2021.05.14 |