[TIL] 2023.11.25

Gahyeon Lee·2023년 11월 25일
0

TIL

목록 보기
9/47
post-thumbnail

형변환에 대해 공부해보자.

아직 함수를 공부하지 않았으니 일단 함수를 호출하면 특정한 동작을 하거나, 원하는 결괏값을 받을 수 있다는 것을 기억하고 시작하자.

🥟 형변환(type casting)

형변환은 하나의 변수에 지정된 자료형을 호환되는 다른 자료형으로 변경하는 기능이다.

  • 기본 자료형
    • 숫자형 : Byte, Short, Int, Long, Float, Double
    • 문자형 : Char
    • (논리형은 변환할 수 없음!)

기본 자료형들은 자료형 간의 형변환을 위한 형변환 함수(type casting function)를 제공한다. 형변환 함수는 다음과 같이 to 뒤에 변환될 자료형을 붙인다.

toByte()
toShort()
toInt()
toLong()
toFloat()
toDouble()
toChar()

예를 들어 Int 변수를 Long 변수에 넣으려고 한다면 코틀린에서는 그냥 할당만 해서는 변환되지 않는다. (Type mismatch. 자료형이 맞지 않는다는 에러가 남!) 반드시 Int형 변수에 toLong() 함수를 호출하여 Long 값으로 변환된 값을 반환받아 Long 변수에 할당해 줘야 한다.

fun main() {
	var a: Int = 54321
    var b: Long = a.toLong()
}

이것을 전문용어로는 명시적 형변환(explicit type casting)이라고 한다.
참고로 코틀린은 형변환시 발생할 수 있는 오류를 막기 위해 다른 언어들이 지원하는 '암시적 형변환'은 지원하지 않는다.

  • 명시적 형변환 : 변환될 자료형을 개발자가 직접 지정하여 변환하는 것
  • 암시적 형변환 : 변수를 할당할 시 별다른 자료형을 지정하지 않아도 자동으로 형변환 되는 것

📢 참고 강의
https://www.youtube.com/watch?v=tvtNch-GPEU&list=PLQdnHjXZyYadiw5aV3p6DwUdXV2bZuhlN&index=3

📢 추가적으로 형변환 시 호환이 가능한지를 체크하여 변환 여부를 확인할 수 있는 방법은 클래스를 배울 때 다시 언급하겠다고 하니 해당 강의를 볼 때 공부하는 것으로 하자 🌝

profile
코린이 강아지 집사🐶

0개의 댓글

Powered by GraphCDN, the GraphQL CDN