//*** Dart 基础编程 ***/
/*
一切变量皆为对象变量,未初始化的值默认为null
内置数据类型:
Numbers (int, double)
Strings (String)
Booleans (bool)
Lists (也被称为 arrays)
Sets (Set)
Maps (Map)
Runes (常用于在 Characters API 中进行字符替换)
Symbols (Symbol)
The value null (Null)
*/
//指定参数名字的函数 {参数列表}
void af({a,b})
{
print("a=${a},b=${b}");
}
//带有默认参数的函数 [参数名=值]
void bf(a,b,[c=0])
{
print("a=${a},b=${b},c=${c}");
}
void main()
{
var s = "Hello Wrold!";
var t1 = null;
print("Dart Demo: $s");
t1 ??= 10; //如果t1为null,则赋值,否则不赋值
print("t1=$t1"); //插值表达式 ${表达式或者变量}
af(a:1,b:2); //指定参数函数调用规则
bf(1,2,3); //带有默认参数函数调用
//运算符 +,-,*,/,~/,%,注意整除: ~/, 取余: %
print("10/3=${10/3},10~/3=${10~/3},10%3=${10%3}");
//逻辑运算符 &&,||,!,通C语言
//位运算符 &,|,~,^,>>,<<,通C语言
//条件表达式 ?:, ??
var ct = true;
print('${ct?"true":"false"}, ${null??"null"}');
//列表操作
var xl = const <int>[1,2,3];
xl.forEach(print);
for(var i in xl)
{
print(i);
}
//流程控制语句,大部分类似C语言语法
//if, else if, do while, while, for, continue, break, switch case
var ss = '1';
switch(ss)
{
case '1':
continue CON; //可选择跳至指定程序段执行
CON:
case '2':
print('ss=$ss');
break;
default:
break;
}
//断言,真通过,假断言提醒,需要开发工具打开该功能支持
var ast = true;
assert(ast, "code value is false");
}