Dart基础快速入门

164 阅读1分钟

程序入口

程序的入口函数(必须有)。

void main() {
}

控制台输出

要在控制台输出,可使用print。

  for (int i = 0; i < 5; i++) {
    print('hello ${i + 1}');
  }

变量

Dart是类型安全的。

创建和分配变量

String name = 'dart';
var otherName = 'Dart';

默认值

在Dart中,未初始化的变量是null。

数字在Dart中也会被当成对象,未初始化的默认值都是null。

var name;// == null
int x;// == null

检查null或零

在Dart中,只有布尔值“true”被视为true。

  var myNull = null;
  if(myNull == null) {
    print('use  "== null" to check null');
  }
    
  var zero = 0;
  if(zero == 0) {
    print('use "== 0" to check zero');
  }

Dart null检查最佳实践

  • ?. 运算符在左边为null的情况下会阻断右边的调用。

  • ?? 运算符在左边表达式为null时,为其设置默认值。

  • ??= 运算符在左边表达式为null是,将右边的值赋给左边。

print(null ?? false);//false
print(false ?? 11);//false
print(true ?? false);//true

技巧: 获取一个对象中数组的长度:searchModel?.data?.length ?? 0;

Functions

函数声明:

fn() {
    return true;
}
bool fn() {
    return true;
}

异步编程

  • Future 对象表示异步操作的结果,我们通常通过then()来处理返回的结果
  • async 用于标明函数是一个异步函数,其返回值类型是Future类型
  • await 用来等待耗时操作的返回结果,这个操作会阻塞到后面的代码

在线编译器