为了避免异常被抛出,可以使用安全类型转换as?,在转换失败后返回null。
val x: String? = y as? String
需要注意的是尽管右边表达式是一个非null类型String,但是转换结果可以是null。