深色模式
Dart 语法基础
变量
定义变量时,可以指定类型,也可以使用类型推断。定义本地变量,建议使用var
。
dart
String name = 'Jack';
int age = 18;
var address = 'ST xx';
空安全
访问对象变量的属性或方法时,如果变量为空,会报错。除非,访问的方法是null
本身就支持的方法,比如toString()
、hashCode
。
有了空安全机制,在编译期,就能检查出代码潜在的错误。
声明一个变量时,必须显式声明它是否可空
初始值
对于全局变量:
可空变量,有一个默认的初始值null
。不可空变量,必须显式给它指定一个初始值。
dart
int? lineCount;
int lineCount = 0;
对于局部变量:
在声明不可空变量时,不必立即指定初始值,但是在访问此变量之前,要给变量赋予一个值。例:
dart
int lineCount;
if (weLikeToCount) {
lineCount = countLines();
} else {
lineCount = 0;
}
print(lineCount);
late 变量
late
关键字,有2个使用场景:
声明一个不可空变量,但是不初始化这个变量。
dartlate String description; void main() { description = 'Feijoada!'; print(description); }
懒初始化一个变量。
dart// 首次访问temperature变量的值时,readThermometer()才会执行1次。 late String temperature = readThermometer();
final 和 const
final
变量,不可变,但其字段可变。
const
是编译时常量,不可变,其字段也不可变。const
同时也是final
。
操作符
dart语言特有的操作符,说明一下:
判空索引访问:?[]
判空访问:?.
强制非空:!
整数除法:~/
级联操作:..
判空级联操作:?..
展开:...
...?
注释
没什么好说的