kotlin学习小记2---空类型和智能类型转换

88 篇文章 0 订阅
60 篇文章 1 订阅

1、空类型

fun getName():String{

   return null;

}

fun main(args: Array<String>){

val name = getName()

println(name?.length)//表示如果name为null,则返回null,不会调用length属性,避免空指针

 

//也可以如下调用

val name = getName()?:return//表示如果name为null,则停止往下继续执行

println(name.length)//有了以上的判断,该语句则会安全执行

 

//!!使用

val age: String? = “123”//表示有可能为null

println(age!!.length)//告诉让编译器age字段一定不会为null,如果为null则会报异常

}

 

2、类型转换

var parent:Parent = Child()

if(parent is Child){

//判断是否为child类型,如果是则自动进行类型转换

}

var chi: Child = parent as Child//类似于java中的类型转换,如果转换失败会抛出异常

var chi: Child? = parent as? Child//类似于java中的类型转换,如果转换失败返回null,不会抛异常

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值