Kotlin 零基础学习 空值处理
2019-01-10 本文已影响4人
__素颜__
Kotlin 处理空值要比其他语言更好一点,像Java就经常出现空指针的问题。下面我们来具体看一下。
1.heat方法接受一个字符串参数,并返回字符串,这个和java一样。
//接受一个参数,参数是非空的String类型
fun heat(str: String): String {
return "烧" + str;
}
fun main(args: Array<String>) {
val heat = heat("水")
println(heat)
}
2.但是如果我们传一个空值,直接编译报错。
image.png
提示:Null不能作为一个非空的String,是不是比java好多了。
3.如果方法可以接受一个空值,可以在参数后面加上"?"代表这个参数可以接受一个空值。
//接受一个参数,参数是非空的String类型,可以接受一个空值
fun heat(str: String?): String {
return "烧" + str;
}
fun main(args: Array<String>) {
val heat = heat(null)
println(heat)
}
这样就可以接受空值,并且不报错了。
总结:
kotlin在处理Null值问题上比Java要好,java对Null体现在运行时异常,而Kotlin直接在编译时体现,问题更早的暴露出来,而且Kotlin如果想传空,参数后面加个“?”即可,相对Java Kotlin处理空值问题上面更加灵活。