728x90
is
is μ°μ°μλ₯Ό ν΅ν΄ νμ 체ν¬λ₯Ό ν μ μλ€.
λν immutable λ‘컬 λ³μ(val)μ΄κ±°λ propertyκ° μ΄λ€ νμ μΈμ§ νμΈλμλ€λ©΄ μλμΌλ‘ ν λ³νμ΄ μ΄λ€μ§λ€.
μμ 1
fun getStringLength(obj: Any): Int? {
if (obj is String) {
// 'obj' κ° String νμ
μμ΄ νμΈλ¨.
// `obj` λ₯Ό String νμ
μΌλ‘ μλ νλ³ν
return obj.length
}
// `obj` κ° String νμ
μ΄ μλλΌλ©΄ μ¬μ ν Any νμ
return null
}
μμ 2
!isκ³Ό κ°μ ννλ‘λ μ¬μ© κ°λ₯νλ€.
fun getStringLength(obj: Any): Int? {
if (obj !is String) return null
// `obj` κ° μλμΌλ‘ StringμΌλ‘ νλ³ν
return obj.length
}
μμ 3
fun getStringLength(obj: Any): Int? {
// μ€λ₯Έμͺ½μμ `obj`κ° StringμΌλ‘ νλ³ν λ ν μΌμͺ½ μ€ν.
if (obj is String && obj.length > 0) {
return obj.length
}
return null
}
λ νΌλ°μ€
https://kotlinlang.org/docs/basic-syntax.html#type-checks-and-automatic-casts
728x90