var num1 = 10
var num2 = 10
val result1 = ++num1 // num1 증가 후 대입
println(result1) // 11
val result2 = num2++ // 대입 후 num2 증가
println(result2) // 10
var str:String = "Hello Kotlin"
str = null // 오류 발생
var str:String? = "Hello Kotlin"
str = null // null 허용
변수 뒤에 ‘?’를 붙혀 호출
값이 null일 경우 null이 입력됨
fun main() {
val x:String? = null
println(strLenSafe(x)) // null
println(strLenSafe("abc")) // 3
}
fun strLenSafe(s:String?): Int?{ //반환이 null로 될 수 있기 때문에 '?' 사용
return s?.length
}
null인 경우 default를 주고 싶을 때 ‘ ?: ’ 키워드 사용
fun main() {
val x:String? = null
println(getStr(x)) // Unknown
println(getStr("abc")) // abc
}
fun getStr(str:String?): String{
return str ?: "Unknown"
}
fun main() {
ignoreNulls(null)
}
fun ignoreNulls(s:String?){
val notNull:String = s!! //!!키워드 때문에 그냥 String으로 선언 가능
println(notNull.length)
}