Kotlin学历之空安全

作者: i校长 | 来源:发表于2017-06-20 19:17 被阅读176次

简述

在java中Null是最常见的陷阱之一,在很多时候不得不写非空判断来增加代码的安全性,随着业务的增长,非空的判断会越来越多,难免会失去控制。kotlin在这个问题上就显得更加的智慧,通过操作符 ?、 !! 来约束可空属性。它是怎么实现的呢?往下看 - -

?操作符

?操作符表示 该属性可能为null ,在使用过程中需要加以判断。

var a: String = "abc"
a =null// 编译错误 根本无法运行

var a: String? = "abc"
a =null// 编译正常

//在使用过程中必须加 判断 不判断编译错误
if(a!=null) print((a as String).length ) else print(-1)
//上面写法有更简单的
a?.length ? : -1 

编译器代码演示

!!操作符

!!操作符 通过下面两次运行比较得出:声明属性b ,可能为空,在直接调用toString函数后控制台打印出null,在使用!!操作符之后直接抛出异常,这就说明在实际应用中,就相当于主动加了throw NullPointerException的异常捕获。

直接toString 使用操作符!!

总结

空安全是kotlin语言区别与java的一个很重的特性,在编程中应用很广泛,这样开发出来的程序更安全。本次学习就到这里,进入下个章节

相关文章

  • Kotlin学历之空安全

    简述 在java中Null是最常见的陷阱之一,在很多时候不得不写非空判断来增加代码的安全性,随着业务的增长,非空的...

  • Kotlin学习之空安全

    Kotlin学习之空安全 Kotlin相对于Java有许多改良的地方,空安全就是其中的一部分,Kotlin因此解决...

  • Android开发kotlin学习(二)

    1.kotlin的空安全 为啥子说kotlin是空安全的?和Java相比,kotlin的空安全可以带来哪些便利之处...

  • Kotlin 之空安全

    背景 在 Java 语境下,使用对象总是让我感到明显的不安全感,这个对象要判空吗?这个对象肯定不会为空,不用加判断...

  • Kotlin - 空安全

    1.Kotlin空安全介绍 Kotlin空安全可消除来自代码空引用的危险。 2.什么是空引用? 许多编程语言(包括...

  • 2017-07-18-kotlin Android基础

    kotlin Android基础 1,实现一个基本的数据类 2,空安全: Kotlin,如很多现代的语言,是空安全...

  • Kotlin学习之空安全

    可空类型与非空类型 Kotlin 的类型系统旨在消除来自代码空引用的危险,也称为《十亿美元的错误》。许多编程语言(...

  • Kotlin null 检测机制、空安全、空指针问题

    空安全 Kotlin 引入可空类型、非空类型 Kotlin 的类型系统旨在消除来自代码空引用的危险 许多编程语言(...

  • Kotlin空安全

    可空类型与非空类型 在 Kotlin 中,类型分为可空引用和非空引用。例如,String 类型的常规变量不能容纳 ...

  • Kotlin 空安全

    简介   Kotlin 的类型系统旨在从我们的代码中消除 NullPointerException。减少线上Nul...

网友评论

    本文标题:Kotlin学历之空安全

    本文链接:https://www.haomeiwen.com/subject/xrkoqxtx.html