Dart的main方法 打印
main(){
print('你好啊');
}
void表示main方法没有返回值
void main() {
print("你好");
}
Dart注释
快捷键Ctrl+/
// void main(List<String> args) {
// print("你好");
// }
使用/* */
/*
void main(List<String> args) {
print("你好");
}
*/
使用三个斜杠/// 也能注释
///print("你好");
Dart数据类型
Dart定义变量可以通过var关键词,也可以通过类型关键词来申变量。
Dart是一个强大的脚本类型语言,可以不预先定义变量类型,变量类型可以自动推断,所有标量初始值都是null。
如:
var a=‘I have a Apple’;//var自动识别类型,可以定义任意类型的变量
String b ='I am a mortal ';//字符串
int c = 100;//数字类型
注意:var 和类型不要同时写
数值Numbers
1、int 整型
2、double浮点型,也可以是整型
int a = 111;
double b = 1.22222;
print(a);
print(b);
print(a+b);//加减乘除取余 都可 + - * / %
字符串
1、字符串定义的几种方式
var str='I see';
String str2 ="I see.";
使用三个单引号’’’ ‘’’,这是dart特有的,可以定义多行的字符串。
String str='''这是第一行
这是第二行
这是第三行
''';
2、字符串的拼接
String str1 = 'I am sorry';
String str2 = 'I forgive you';
print("$str1,$str2");//输出I am sorry,I forgive you
print(str1 + str2); //输出I am sorryI forgive you
布尔
通过bool定义 值有两个true和false
bool flag = false;
print(flag);//打印 false
条件判断
bool flag = false;
if (flag) {
print('I am here.');
} else {
print('I am not here.');
}
//打印 I am not here.
List 数组
指定类型数组
var l1 = <String>['I', 's', 'e', 'e'];
print(l1); //[I, s, e, e]
任意类型数组
var l = ["manic", 120, 1.22, true];
print(l);// [manic, 120, 1.22, true]
print(l.length);// 4
print(l[1]);// 120
数组里面增加数据,通过[]创建数组,他的容量是够可以变化的。
var l = [];
print(l); //[]
print(l.length);//0
l.add("dart");
l.add(10);
l.add(true);
print(l);//[dart, 10, true]
print(l.length);//3
创建固定长度的集合,可修改,不可增减
var l = List.filled(length, fill);
var l = List.filled(8, "ToT");
print(l); //[ToT, ToT, ToT, ToT, ToT, ToT, ToT, ToT]
l[2] = "233";
l[3] = "修改";
print(l); //[ToT, ToT, 233, 修改, ToT, ToT, ToT, ToT]
l.add("1000");//报错
创建固定长度的指定类型集合
var l1 = List<int>.filled(5, 20);
print(l1);//[20, 20, 20, 20, 20]
字典
Maps
var person = {
"name": "adadou",
"age": 18,
"sex": "woman",
"work": ["student", "法师"]
};
print(person);//{name: adadou, age: 18, sex: woman, work: [student, 法师]}
print(person["name"]);//adadou
print(person["age"]);//18
print(person["work"]);//[student, 法师]
new Map()
var person = new Map();
person['name'] = 'adadou';
person['age'] = 18;
person['sex'] = "women";
person["work"] = "student, 法师";
print(person);//{name: adadou, age: 18, sex: women, work: student, 法师}
print(person['name']);//adadou
使用is判断变量类型
var str = '2333';
if (str is String) {
print("是String类型");
} else if (str is int) {
print("is int 类型");
} else if (str is bool) {
print("is bool 类型");
} else {
print("is 其他");
}
// 是String类型
Dart常量
常量就是永远不改变的量。
关键词const定义,防止内容变化。
const PI = 3.141592;
关键词final,const能实现的final也能实现。
final PI = 3.141592;
const和final的区别:
- const:值不变 一开始就要赋值 只能赋一次值 而且不能引用
- final:具有const的功能,开始可以不赋值 只能赋一次值;
final惰性初始化 只在运行时才开始初始化 而const在编译的时候就必须要赋值
如果要给常量调用方法,只能使用final
final P = new DateTime.now();
Dart命名规则
- 变量名称必须用数字、字母、下划线和美元符$组成;
- 标识符开头不能是数字 eg:a1 √,1a ×
- 标识符不能保留字和关键字 eg:变量不能定义if 或者int
- 变量的名字区分大小写