코틀린의 기본 타입은 다른 언어와 마찬가지로 정수 타입, 소수 타입, 문자 타입 등이 있습니다. 이번 포스팅에서는 각각을 좀 더구체적으로 정리해보겠습니다.
기본타입 - 정수 타입
이름 | 크기 | 범위 | 대응 자바 타입 |
Byte | 1 | -128 .. 127 | byte |
Short | 2 | -32768 .. 32767 | short |
Int | 4 | -2^31 .. 2^31-1 | int |
Long | 8 | -2^63 .. 2^63-1 | long |
코틀린에서는 정수를 객체처럼 바라봅니다.
기본타입 - 정수 리터럴
1. 10진수
val n = 12345
val m = 34_721_189 // ,대신
2. Long 리터럴
val hundred1 = 100 // int
val hundred2 = 100L // long
3. 2진수(앞에 0b)
val bin = 0b10101
4. 16진수(앞에 0x)
val hex = 0xF9
5. 최소값/최대값
Short.MIN_VALUE
Short.MAX_VALUE
기본타입 - 부동 소수점 수 (Double/ Float)
1. 10진 소수 리터럴(Double)
val pi = 3.14
val one = 1.0
val quarter = .25
val one_err = 1.
2. 과학적 표기법(Double)
val pi = 0.34e1
val piOver100 = 3.14e-2
3. Float
Float는 뒤에 f를 붙여주어야 한다.
4. 상수
Float.MIN_VALUE
100.0 / 0.0 -> Infinity
-100.0 / 0.0 -> -Infinity
0.0/ 0.0 -> Nan
기본타입 - 산술 연산의 형 변환
서로 다른 형끼리 연산하면 더 표현 값이 넓은 형으로 변환됩니다.
byte + byte -> Byte
int + byte -> Int
int + long -> Long
long + double -> Double
float + double -> Double
float + int -> Double
long + float -> Float
기본 타입 - 비트 연산
and 연산: 비트가 모두 1일 때 1을 반환하고 그 외에 0을 반환합니다.
or 연산: 비트가 하나라도 1이면 1을 반환하고 그 외에 0을 반환합니다.
xor 연산: 비트가 서로 다른 경우에 1을 반환하고 그 외에 0을 반환합니다.
inv 연산: 0을 1로, 1을 0으로 반전시키는 연산입니다.
기본 타입 - 기타
1. 문자 타입 char
16bit로 유니코드 한 글자를 표현합니다.
val z = 'z'
val quote = '\'
2. 수변환
7.toByte()
n.toShort()
3. 불 타입과 논리 연산
불 타입: 참 거짓을 위한 타입
논리 연산
!: 논리 부정
or, and, xor: 즉시 계산 논리식
||, &&: 지연 계산 논리식 (앞만 체크하는 경우가 있다)
ex) x==1 || y/(x-1) != 1 -> x==1이 아닌 경우에만 뒤를 체크하게 된다.
4. 비교와 동등성
NaN는 어떤 수와도 같지 않고 크기를 비교해도 다 false다
Double.NaN == Double.NaN -> false
특정 수가 NaN인지 확인하려면 isNaN()함수를 호출해야 한다.
Double.NaN < Double.POSITIVE_INFINITY -> false
'프로그래밍 언어 > Kotlin' 카테고리의 다른 글
[Kotlin] null 정리 (0) | 2022.10.11 |
---|---|
[Kotlin] 코틀린 클래스, 생성자 (0) | 2022.10.09 |
[Kotlin] 코틀린 함수 (1) | 2022.10.08 |
[Kotlin] 코틀린 문자열과 배열 (1) | 2022.10.08 |
[Kotlin] 코틀린 언어 특징 (0) | 2022.10.06 |