dart操作符

197 阅读1分钟

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();
}