Android (Kotlin)
[Kotlin] let 과 also , Elvis 연산자 와 Null 값 필터링
No.401
2020. 9. 13. 17:28
Let function은 아래와 같이 참조가 nullable이 아닌 경우에만 지정된 람다 함수를 실행
newString = " Kotlin from Android"
newString?.let { println("The string value is: $it") }
newString = null
newString?.let { println("The string value is: $it") }
also 사용
var c = "Hello"
var newString = "chenge string."
newString?.let { c = it }.also {
println("Logging the value: $it")
}
Log.d("TAG",c)
--> "chenge string."
Elvis 연산자 : Elvis 연산자를 ?:사용하면 아래와 같이 null 대신 기본값을 설정할 수 있다.
var newString : String? = "JournalDev.com"
println(newString?.length) //prints 14
newString = null
println(newString?.length?:"-1") //prints -1
Null value filter
var array2: Array<Any?> = arrayOf("1", "2", "3", null)
var newArray = array2.filterNotNull()
println(newArray.size) //prints