변수 - 데이터를 저장하고 사용하는 기본 단위 변수
자료형 - 그 변수의 형태를 지정하는 자료형
변수는 선언 위치에 따라
코틀린이 고전적인 언어들과 다른점
- 고전적 언어: 변수가 선언된 후 초기화되지 않으면 기본값으로 초기화되거나 값이 할당되지 않았다는 표시로 null 값을 가짐
- 코틀린: 기본변수에서 null을 허용하지 않으며 변수에 값을 할당하지 않은채로 사용하게 되면 문법 에러를 표시하고 컴파일을 막아주므로 의도치 않은 동작이나 null pointer exception 등을 원천적으로 차단해줌.
null을 하나의 정보로 사용할 경우는 아래와 같이 사용!
var a:Int? = null
정수형
정수형의 리터럴(코드 내에 값을 표기하는 것)
8진수의 표기는 지원하지 않음
10진수 16진수 2진수 - 32비트 이내의 10진수가 기본형
fun main() {
var intValue:Int = 1234
var longValue:Long = 1234L // 더 큰 메모리의 정수
var intValueByHex:Int = 0x1af // 16진수 - 0x
var intValueByBin:Int = 0b10110110 // 2진수 - 0b
}
실수형
fun main() {
var doubleValue:Double = 123.5
var doubleValueWithExp:Double = 123.5e10
var floatValue:Float = 123.5f // f - 16비트의 float형
}
자바는 최대 범위값이 정해져있따 큰범위의 숫자는 사용할 수 없음!
숫자를 문자열로 계산해서 연산하기도 한다.
문자형
fun main() {
var charValue:Char = 'a'
}
문자열
fun main() {
val stringValue = "test"
val multilineStringValue = """multiline
string
test"""
}
논리형
fun main() {
var booleanValue:Boolean = true
}