浅谈 Flutter 空安全
介绍
空安全(Sound null safety)是Flutter 更新之后 Dart 中新增的一项特性,它并不是独有的,像Kotlin、swift等语言也有此特性。有了空安全,Dart 分析器可以进行更好的检查。例如:它将在您读取一个可空的变量前提示您进行空检查。由于 Dart 的空安全是十分有效的, Dart 编译器和运行环境也同时可以通过优化减少内部的空安全检查, 这样应用就可以更快且更小。与空安全相关的新操作符和关键字有 ?、!。如果之前有了解过的话相信接下来很容易能明白,因为它们之间的代码非常一致。
使用
我们先看一个简单的代码,定义一个int 类型的变量
int count = null;
在没有空安全前,上面的代码是可以编译的,不会报错,在有空安全之后,我们看看编译时的异常:

异常提示:int类型不能赋值为null类型。
在空安全之前,是可以直接赋值为null,且可以通过编译,这个就说空安全与之前最大的不同,而且是在编译阶段就直接报异常错误。
在使用空安全的情况下,我们想让变量赋值为null时,我们可以这样处理:
int? count = null;
String? name = null;
只需在类型后面添加 ? 即可
类型后面跟操作符 ? 表示当前变量可为null。
使用过程容易出现的问题
我们接下来来看看平时日常中使用空安全比较容易出现的问题。我们下面看一段简单的代码:
String? name = null;

最低0.47元/天 解锁文章
7768

被折叠的 条评论
为什么被折叠?



