반응형
    
    
    
  
1. 변수
1) var / val
    var : 값을 변경할 수 있음
    val : 깂을 변경할 수 없음
2) 변수선언
    var 변수명 : (자료형) = 값
    val 변수명 : (자료형) = 값
var a : Int = 10
val b : String = "안녕"
    코틀린은 변수값을 보고 형추론 -> 자료형 생략가능
val c = 20
var d = "하이"
2. 자료형
1) 숫자형
정수형 : Long(64비트), Int(32비트), Short(16비트), Byte(8비트)
val a = 123  // Int
val b = -123  // Int
val c = 123L  // Long
val d : Byte = 127  // 명시적으로 자료형 지정
val e : Short = 2345  // 명시적으로 자료형 지정실수형 : Double(64비트), Float(32비트)
val a = 1.23  // Double
val b = 1.23F  // Float
2) 문자형
문자열 : String
문자 : Char(16비트)
val ch1 = 'a'  // Char
val ch2: Char = 'b'  // Char
val str1 = "안녕"  // String
val str2 : String = "하이"  // String
3) 논리형
Boolean(1비트)
var isResult = true
var isResult : Boolean = false
3. null 허용
1) 물음표 (?)
코틀린에서 변수는 반드시 할당되어야한다. 즉, null 값을 가질 수 없다.
null값을 허용하기 위해서는 물음표를 사용해야한다.
val a : Int  // Error
val b : Int = null  // Error
val c : Int? = null  // null 허용
2) 세이프콜 (?.)
null을 허용한 변수를 .연산자 대신 .?연산자를 사용하여 안전하게 호출
var str : String? = null
str.length  // Error
str?.length  // null
3) 엘비스 연산자 (?:)
변수가 null이면 null이 아닌 지정값 반환
var str : String? = null
str?.length ?: "값을 입력하시오"  // 값을 입력하시오
str = "안녕"
str?.length ?: "값을 입력하시오"  // 2
반응형