戳这里了解《Flutter入门与实战》专栏,持续更新、系统学习!
前言
在 Dart 编码中,我们会经常遇到需要处理 null
的场合。Dart 2.12版本引入 null safety
以后,对 null
的处理有了新的规范。关于 null safety 特性,可以阅读本人的另一篇文章:[关于 Dart 的空安全(null safety),你要知道的都在这里](https://blog.csdn.net/shuijian00/article/details/122650142,本篇介绍如何正确处理 null
。
规范1:不要显式地将变量初始化为 null
如果一个变量声明的时候是 non-null
的话,赋值为 null
时,编译器会报错;而如果一个变量声明为 nullable
的话,会隐式地以 null
初始化,因此如果再赋值 null
那就是多此一举了。在 Dart 中不存在未初始化的内存问题,因此没必要初始化为 null
。
// 正确示例
Item? bestDeal(List<Item> cart) {
Item? bestItem;
// ...
}
// 错误示例
Item? bestDeal(List<Item> cart) {
Item? bestItem =