rakulang, dartlang, nimlang, golang, rustlang, lang lang no see

Dart 入门

焉知非鱼

Dart入门指南。

重要的概念 #

与 Java 不同,Dart 没有关键字 “public”, “protected” 和 “private”。 如果标识符以下划线(_)开头,则它相对于库是私有的。 有关更多信息,参考库和可见性

变量 #

var name = 'Bob';     // 类型推断

dynamic name = 'Bob'; // 动态类型
String  name = 'Bob'; // 显式声明

默认值 #

未初始化的变量默认值是 null。即使变量是数字, 类型默认值也是 null, 因为在 Dart 中一切都是对象,数字类型也不例外。

int lineCount;
assert(lineCount == null);

final 和 const #

使用 final 关键字声明的变量, 其值只能被设置一次, 使用 const 关键字声明的变量, 其值在编译时就已固定:

final name = 'Bob'; // 不使用类型注解
final String nickname = 'Bobby';

name = 'Alice';     // Error: final 变量只能被设置一次

const 声明一个在编译时就固定不变的值, 例如数字字面量、字符串字面量:

const bar = 1000000;              // 压力单位(dynes/cm2)
const double atm = 1.01325 * bar; // 一个标准大气压强

内置类型 #

Dart 语言支持以下内置类型:

类型 字面量 对象
Number 2⁶³ -1
String ‘Hello’
Boolean true,false
List [1,2,3]
Set {‘raku’,‘perl’}
Map {‘lan’: ‘raku’}
Rune \u2665, \u{1f600}
Symbol #dadix, #bar

Versions used: dart 2.8.4