2.times(3)
=> kotlin.Int = 6
3.5.plus(4)
=> kotlin.Double = 7.5
2.4.div(2)
=> kotlin.Double = 1.2
Type | Bits |
---|---|
Long | 64 |
Int | 32 |
Short | 16 |
Byte | 8 |
Type | Bits | Notes |
---|---|---|
Double | 64 | 16 - 17개의 유효 숫자 |
Float | 32 | 6 - 7개의 유효 숫자 |
Char | 16 | 16비트 유니코드 문자 |
Boolean | 8 | true or false |
// Byte 에 Int 할당
val i: int = 6
val b: byte = i
println(b)
=> error: type mismatch: inferred type is Int but Byte was expected
// int 를 Byte 로 변환
val i: Int = 6
println(i.toByte())
=> 6
Kotlin은 숫자 유형 간에 암시적으로 변환하지 않으므로 Short 값을 Long 변수에 직접 할당하거나 Byte를 Int에 할당할 수 없다. 암시적 숫자 변환은 프로그램 오류의 일반적인 원인이지만 캐스팅을 통해 다양한 유형의 값을 할당하면 이를 방지할 수 있다.
여기서는 변수를 생성하고 먼저 유형이 일치하지 않는 변수를 다시 할당하려고 하면 어떤 일이 발생하는지 보여준다. 그런 다음 toByte()를 사용하여 이를 캐스팅하고 오류 없이 인쇄한다.
val oneMillion = 1_000_000
val idNumber = 999_99_9999L
val hexBytes = 0xFF_EC_DE_5E
val bytes = 0b11010010_01101001_10010100_10010010
문자열은 공백과 숫자를 포함할 수도 있는 큰따옴표로 묶인 일련의 문자이다. 문자열은 변경할 수 없다.
문자열이 소스 코드에 문자 그대로 나타나는 경우 이를 문자열 리터럴 또는 익명 문자열이라고 한다. Kotlin에는 두 가지 유형의 문자열 리터럴이 있다. 이스케이프 문자가 포함될 수 있는 이스케이프된 문자열과 줄 바꿈 및 임의 텍스트를 포함할 수 있는 원시 문자열이다. 원시 문자열은 삼중따옴표(""")로 구분되고 이스케이프가 포함되지 않으며 줄 바꿈 및 기타 문자를 포함할 수 있다.
val text = """
var bikes = 50
"""
문자열은 공백과 숫자를 포함할 수도 있는 큰따옴표로 묶인 일련의 문자이다.
문자열이 소스 코드에 문자 그대로 나타나는 경우 이를 문자열 리터럴 또는 익명 문자열이라고 한다. Kotlin에는 두 가지 유형의 문자열 리터럴이 있다. 이스케이프 문자가 포함될 수 있는 이스케이프된 문자열과 줄 바꿈 및 임의 텍스트를 포함할 수 있는 원시 문자열이다. 원시 문자열은 삼중따옴표(""")로 구분되고 이스케이프가 포함되지 않으며 줄 바꿈 및 기타 문자를 포함할 수 있다.
val i = 10
println("i = $i")
=> i = 10
val s = "abc"
println("$s.length is ${s.length}")
=> abc.length is 3
문자열 리터럴에는 템플릿 표현식이 포함될 수 있다. 평가되고 그 결과가 문자열로 연결되는 코드 조각이다.
val numberOfStudents = 50
if (numberOfStudents in 1..100) {
println(numberOfStudents)
}
=> 50
for (i in 1..8 step 2) print(i)
=>1357
출처 링크텍스트