为了账号安全,请及时绑定邮箱和手机立即绑定

【学习打卡】第12天-C01学习Kotlin

标签:
Kotlin
  • 课程名称:一课掌握Kotlin 突破开发语言瓶颈
  • 章节名称:
    • 第4章:类型初步
      • 4-3空类型安全
  • 讲师姓名:bennyhuo
  • 时间:2022-08-15 22:04

课程内容

  • 空类型安全:空指针异常是最常见的错误,为了一劳永逸解决这个麻烦,使用了空类型安全

  • 定义指定类型时,都是不再允许再为其赋值null

  • 再声明为某一个类型后,该类型变量都不能设置为null

  • 例子:

    var nonNull: String = "Hello"//这里的String与Java的String类型不同,该类型变量不能为null
    // nonNull = null// 编译器会报错
    val length = nonNull.length// 由于根本不会担心为空,所以可以放心使用
    
  • 特殊:

    • 需要能兼容空类型,即能为变量赋值为空

      var nullable: String? = "Hello"//这里的问号就表明,该变量可以赋值为空。即该变量为可空类型
      // 错误写法
      val length01 = nullable.length//编译器会报错,因为nullable可能为空,调用其属性会报错
      // 正确写法,这是在明确知道变量不会为空的情况下的写法
      val length02 = nullable!!.length// 两个惊叹号表示将变量强转成不可空类型,但是也不安全
      // 如果变量可能为空,安全写法
      val length03 = nullable?.length//如果nullable为空,则变量length03也会是空类型
      val length04 = nullable?.length ?: 0//如果nullable为空,会返回?:后面的值,elvis符
      
    • 不能为空类型与可空类型关系

      var x: String = "Hello"
      var y: String? = "World"
      
      x = y//报错,类型不匹配Type mismatch
      y = x//OK,没有问题,说明String是String?类型的子类,毕竟?就可以比原来多一个空类型,集合变大了一个
      
    • 平台类型

学习心得

本章内容说明为了解决空指针问题,Kotlin平台真的是操碎了心

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
9
获赞与收藏
1

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消