自己在家怎么做网站服务器,网站空间怎么建站,如何注册腾讯企业邮箱,网站设计公司推荐奇点网络1、定义可空类型
fun main(){// 定义可空类型var x:String? hellox null
}
2、!! 强转类型
定义可空类型之后#xff0c;如果使用其内置方法#xff0c;编译不会通过#xff0c;因为值有可能为null#xff0c;可以使用 !! 把类型强转为不可空#xff1a…1、定义可空类型
fun main(){// 定义可空类型var x:String? hellox null
}
2、!! 强转类型
定义可空类型之后如果使用其内置方法编译不会通过因为值有可能为null可以使用 !! 把类型强转为不可空
fun main(){// 定义可空类型var x:String? hello// 此时x值确定为不可空类型所以可以调用length方法val y x!!.length // y 类型为 int 类型println(${y.javaClass.simpleName}) // int
}
注意事项上边!! 运算符不是安全的因为如果该值是否为空会报空指针异常。
3、?. 安全访问运算符
定义及使用
fun main(){// 定义可空类型var x:String? hello// 获取字符串长度如果x不为空则返回其长度否则返回0var y x?.length?:0println(y) // 5x nully x?.length?:0println(y) // 0
}
注意事项
(1) ?. 为安全访问判断逻辑是x?.length 只有x值不为空时才会调用 .length。
(2)上边 ?: 运算符 是安全的判断逻辑是 如果 ?: 前边值为空则使用后边定义的值。