1. dart文件以.dart为后缀名
2. 入口方法为main
void main(){
print("Hello Dart");
}
3. 定义变量,Dart中有类型校验
var str = "张三"; //通过var关键字定义的变量没有指定类型,dart会自动判断类型
String str = "李四"; //指定类型
int $a = 1; // 指定为int 类型
变量定义命名规则:
- 变量名称必须由数字、字母、下划线和美元($)组成。
- 注意:标识符开头不能是数字
- 标识符不能是保留字和关键字
- 变量名是区分大小写的,age和Age是两个不同的变量。尽量不要用这种会产生歧义的形式。
4. 常量:final和const修饰符
const值不变,一开始就要初始化
final 可以开始不赋值,只能赋值一次。而final不仅有const的编译时常量特性,最重要的它是运行时常量,并且final是惰性初始化,即在运行时第一次使用前才被初始化。
永远不可改变的量,请用final或者const来修饰它,而不是使用var或者其他变量类型。
final PI = 3.14159; //不可修改
const PI = 3.1.159; //不可修改
final和const的区别
final a = new DataTime.now(); //可以定义成运行时常量
const a = new DataTime.now(); //编辑器报错,是编译时常量
5. 数据类型
常用数据类型:
- Numbers(数值型):
int
double - String(字符型):
String - Booleans(布尔)
bool - List(数组)
在Dart中,数组是列表对象,所以大多数人只是称他们为列表 - Maps(字典)
通常来说,Map是一个键值对相关的对象。健和值可以是任务类型的对象。每个健只出
项目中用不到的数据类型:
Runes
Rune 是UTF-32编码的字符串。它可以通过文字转换成符号表情或者代表特定的文字。
main(){
var clapping = '\u{1f44f}';
print(clapping);
print(clapping.codeUnits);
print(clapping.runes.toList());
Runes input = new Runes('\u{1f44f}');
}
定义字符串(多行)://三个单引号和三个双引号都可以
String = '''this a str1
this a str2
this a str3
''';
//字符串拼接
String str1 = "你好";
String str2 = "Jack";
print("$str1 $str2"); //输入:你好 Jack
print(str+ " " + str);
List类型
定义:
var list = [123,456,789,'aaa','bbb'];
print(list);
var list = new List();
list.add(123);
list.add(456);
list.add(789);
print(list);
定义List里数据类型
var list = new List<String>();
list.add(123); //报错,元素必须是字符串
Map类型
var person = {
"name":"张三",
"age":20,
"work":["程序员","配送员"]
};
print(person["name"]);
var p = new Map();
p["name"] = "张三";
p["age"] = 20;
p["work"] = ["程序员","配送员"];
类型判断
用is关键词来判断类型
var str = '1234';
if(str is String) {
print("String 类型");
}else if(str is int) {
print("Int 类型");
}else{
print("Int 类型");
}
6. 运算符
int a = 13;
int b =2;
print(a+b); //加
print(a-b); //减
print(a*b); //乘
print(a/b); //除
print(a%b); //取余数
print(a~/b); //取整数
赋值:
int b;
b ??= 23; //表示如果b为空,就把23赋值给b
print(b);
7. 类型转换
String str = "123";
var myNum = int.perse(str);
print(myNum is int);
网友评论