[코틀린 문법] 형변환과 배열
Type Casting(형변환)
// Type Casting(형변환) //
// 자료형을 변경하는 기능
// 논리형은 형변환 불가능
// Explicit Type Casting(명시적 형변환)
// -> 코틀린에서 사용하는 형변환
// 변환될 자료형을 개발자가 직접 지정함
// Implicit Type Casting(암시적/묵시적 형변환)
// -> 코틀린에서 지원 안 함
// 자료형 지정하지 않아도 변수 할당시 자동으로 형변환됨
var a: Int = 321
var b: Long = a.toLong()
// var b: Long = a
// Kotlin: Type mismatch: inferred type is Int but Long was expected
// a는 Int, b는 Long -> 냅다 할당하면 에러 발생
// Long형으로 바꾸기 위해 toLong() 함수 사용
var c = 119
var d: String = c.toString()
// var d: String = c
// Type Casting Function(형변환 함수) //
// toByte()
// toShort()
// toInt()
// toLong()
// toFloat()
// toDouble()
// toChar()
// toString()
Array(배열)
// 숫자 들어간 5칸짜리 배열
// var intArr : Array<Int> = arrayOf(1, 2, 3, 4, 5)
// 코틀린은 알아서 타입추론하기 때문에
// : Array<Int> 즉 자료형 부분 생략 가능
var intArr = arrayOf(1, 2, 3, 4, 5)
println(intArr[2])
// 3
// 배열 index는 1이 아닌 0부터 셈
// -> intArr[2]는 intArr의 2번째가 아닌 3번째 값임
// 배열의 기존 값 변경
intArr[2] = 8
println(intArr[2])
// 8
// null로 채워진 5칸짜리 배열
// <배열에 들어갈 자료형 지정> -> generic
// ()로 배열 크기 지정
var nullArr = arrayOfNulls<Int>(5)
// 문자열 들어간 배열도 동일함
// 자료형 생략
var cardNames = arrayOf("Jack", "Queen", "King")
// 1번째 값 출력
var firstCard = cardNames[0]
println(firstCard)
// 값 변경 후 출력
cardNames[0] = "Ace"
println(cardNames[0])
// println(firstCard)
// : Array<Any>일 경우 자료형 아무거나 다 넣을 수 있음
// val anyArr : Array<Any> = arrayOf(1,"a",2.3f)
// 자료형 생략
val anyArr = arrayOf(1,"a",2.3f)
참고
반응형
'개발(Android) > kotlin syntax' 카테고리의 다른 글
[Kotlin syntax] Break, Continue, Logical Operators (0) | 2022.04.04 |
---|---|
[Kotlin syntax] While, Do While, For, Increment Operators, Decrement Operators (0) | 2022.04.03 |
[Kotlin syntax] Conditional expressions(If, When), Comparison Operators (0) | 2022.04.01 |
[Kotlin syntax] Type Inference, Functions, Arithmetic Operators (0) | 2022.03.31 |
[Kotlin syntax] Variables, Data Types (0) | 2022.03.31 |