dart操作符
类型判定操作符 操作符 解释 as 类型转换 is 如果对象是指定的类型返回 True is! 如果对象是指定的类型返回 False 1 2 3 4 5 6 int a = 123; String b = 'ducafecat'; String c = 'abc'; print(a as Object); print(b is String); print(c is! String);
条件表达式
| 操作符 | 解释 |
|---|---|
| condition ? expr1 : expr2 | 如果 condition 是 true,执行 expr1 (并返回执行的结果); 否则执行 expr2 并返回其结果。 |
| expr1 ?? expr2 | 如果 expr1 是 non-null,返回其值; 否则执行 expr2 并返回其结果。 |
bool isFinish = true;
String txtVal = isFinish ? 'yes' : 'no';
bool isFinish;
isFinish = isFinish ?? false;
or
isFinish ??= false;
级联操作符 操作符 解释 .. 可以在同一个对象上 连续调用多个函数以及访问成员变量。
StringBuffer sb = new StringBuffer();
sb
..write('hello')
..write('word')
..write('\n')
..writeln('doucafecat');
Dart中..级联操作
class Person {
var name;
var age;
Person(this.name, this.age);
getInfo() {
print("${this.name},${this.age}");
}
}
main() {
var p = new Person('张三', 20);
p.getInfo();
//..为级联操作,可以同时赋值执行方法
p
..name = "李四"
..age = 30
..getInfo();
}