1.常见的异常
- NullPointerException 空指针异常
- ClassNotFondException 找不到类
- ArithmeticException 数学异常(比如1/0)
- ArrayIndexOutofBoundsException 角标越界
- lllegalArgumentException 非法参数
而应用的一大杀手就是空值异常
2.空值处理
- ?可空变量类型
val a:Int?=null
- !!非空断言
var age:String=null!!
- ?.空安全调用符
age?.toInt()
*?:E;vis操作符(猫王)
var ageInt:Int=age?.toInt()?:10
示例代码:
fun main(args: Array<String>) {
//10 "10" 可空类型
val str:String?=null
//空安全调用符
val str2:Int?=str?.toInt()
println(str2)
val b:Int=str?.toInt()?:10
//转换为Int类型
//!!告诉编译器 不要检查了 我一定不为空,还是可能为空,不建议使用
val str1= str!!.toInt()
}
网友评论