关于Dart的基础知识
Dart 文件扩展名:.dart
变量
var name = 'Blob'; 声明局部变量,而不是使用准确的类型Object name = 'Blob'; 此种情况下 name 变量被推断为 String。如果一个对象不受限于单一类型,可以指定为 Object 类型(必要时使用 dynamic)String name = 'wang'; 字符串类型String? name 允许空值,可以是 null 或者 stringString name 不允许空值,不能为 null,但可以是 string
终值 final 和常量 const
final name = 'wang'; 不可修改final String name = 'wang';const num = 1000000const double num2 = 1.23*num
常量 const 可省略,例如 foo = [1,2,3];
常量不可修改
基本类型
Numbers // 包含int和double
Strings // String
Booleans // bool
Records // [value1, value2]
Functions // Function
Lists // List (Array)
Sets // Set
Maps // Map
Runes // Runes,会被characters API替代(目前不懂)
Symbls // Symbol
null // Null
其他类型
Object // 除Null外所有基础类型的超类
Enum // 所有枚举的超类
Future
Stream // Future 和 Stream 用于异步处理
Iterable // 用于for-in 和generator function
Never // 表示一个表达式永远不能成功的完成求值,常用语抛出异常的函数
dynamic // 要禁用静态检查,通常应该使用Object或Object?
void //
类型定义
typedef
typedef IntList = List<int>;
IntList il = [1, 2, 3];
typedef ListMapper<X> = Map<X, List<X>>;
ListMapper<String> m1 = {}