[코틀린] study day 2

승아·2020년 10월 8일
0

변수

  • val (value) : 불변형
  • var (variable) : 가변형

변수 선언

var username: String = "승아"
var count = 3 
var d = 3.14159268

type 추론

ctrl + shift + p

println("username: $username")  // ${변수명}

null

  • String : null 불가능
  • String? : null 가능

null 체크 여부

println("str1 : str1, length : ${str1?.length}") 
// 세이프 콜(str1?.length) : str1이 null이면 length 실행 X
 println("str1 : str1, length : ${str1!!.length}") 
// str1!!.length : str1이 null이더라도 체크하지 X

if

 val len1 = if (str1 != null) str1.length else -1
 val len2 = str1?.length ?: -1 //elvis 연산자 if문과 동일

형변환

  val a: Int = 128 
  val b: Double = a.toDouble() 

== 과 ===

 val a: Int = 128 // 기본형
 
 println(a == b) // == 값만 비교
 println(a === b) // === 값과 참조 주소 비교
 
// 코틀린에서는 참조형으로 선언한 변수의 값이 -128~127 범위에 있으면 캐시에 그 값을 저장함
  
val c: Int? =   // 객체, 참조형
val d: Int? = a
val e: Int? = c

println(c == d) // true
println(c === d) // false, a가 -128 ~ 127 사이의 값이면 true

println(c === e) // true

부스트코스 코틀린강좌를 참고하였습니다.

0개의 댓글