엔지니어 규의 IT 프로그래밍 다이어리

[Kotlin]2. 형변환과 배열 본문

프로그래밍 언어/코틀린

[Kotlin]2. 형변환과 배열

엔지니어 규 2022. 4. 29. 15:12
728x90

형변환

 

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

 

코틀린은 자료형 간의 형변환을 지원하기 위해 형변환 함수들을 제공하고 있다.

 

 이러한 형변환 함수들은 to 뒤에 변환된 자료형을 받아서 사용하고 있다.

 

toByte()

toShort()

toInt()

toLong()

toFloat()

toDouble()

toChar()

1
2
3
4
5
fun main(){
    var a : Int = 12345
   var b : String = a.toString()  // 정수 자료형인 a 를 문자 자료형으로 바꿈
    println(b)
}
cs

위 코드 처럼 형변환을 하기 위해서는 Int형 변수의 toString() 함수를 호출하여,

 

String 값으로 변환된 값을 반환받아 String 변수에 할당해줘야 한다.

 

이것을 전문용어로는 명시적 형변환(explicit type casting) 이라고 한다.

 

참고로 코틀린은 형 변환시 발생할 수 있는 오류를 막기위해, 다른 언어들이 지원하는 암시적 형변환 은 지원하지 않는다.

 

명시적 형변환 : 변환될 자료형을 개발자가 직접 지정함

암시적 형변환 : 변수를 할당할 시 자료형을 지정하지 않아도 자동으로 형변환 됨

 

배열

배열은 내부적으로  Array class 에서 제공이 된다.

1
2
3
4
5
6
7
8
fun main(){
 
    var a = arrayOf(1,2,3,4,5)
    var b = arrayOfNulls<Int>(5)   // 크기가 5인 비어 있는 배열
 
    a[3= 6  // a 배열의 4번째 자료에 6 을 할당한다.
    println(a[2]) //a 배열의 3번째 자료를 출력한다.
}
cs

배열을 만들기 위해서는 배열로 사용할 변수를 사용해 주고 arrayOf 함수를 통해 배열에 저장할 값들을 나열하면 된다.

 

특정 크기의 공간을 가지는 비어있는 배열을 만들고 싶다면 arrayOfNulls<자료형>(자료크기) 방식으로 만들수 있다.

 

여기서 배열에 할당할 <자료형> 을 지적해 주는 행위를 'Generic' 이라고 하는데 이것은 추후에 다시 자세히 알아볼 예정이다. 

 

또한 위에서 볼 수 있듯 해당 배열 뒤에  [] 를 붙여줘서 배열내 원하는 순서의 자료를 읽을수 있으며,

 

또한 이미 있는 자료를 다른 자료로 할당 할 수 있다. 

 

* 참고로 a[3] 은 배열의 3번째가 아니고 4번째 자료를 가리킨다. 대부분의 언어에서는 [0] 이 배열의 첫번째를 가리킨다.

 

 

배열은 처음 선언했을때의 전체 크기를 변경 할 수 없다는 단점이 있지만,

 

한번 선언을 해주면 다른 자료구조보다 빠른 입출력이 가능하다는 장점이 있다.

728x90
Comments