主要参考: dart官方文档
1. 变量
dart和javascript不同是一种强类型语言,所以其定义变量的时候需要给出具体变量的类型,如果不指定,变量的类型就已第一次定义的类型为准,如果赋值给其不同类型就会报错。
其变量定义方法通常为 [声明符号](如果是dynamic可省略) + [类型](可省略) + [变量名],但是注意声明符号和类型不能同时省略
-
声明号包括:
- var: 定义一个可变便变量,其后跟的类型省略,会自动获取赋值得到的类型,后续对其赋值,类型不能变
- final/const 指定一个不可变的变量值,只能在声明的时候被赋值一次,两者的区别是const 是在编译阶段为一个常量,如果const 用于class内,则需要将const 改为static const, final可以直接使用
- dynamic dynamic定义的一个可变变量,其类型和值都可变
-
常用类型包括
- 数值类型(Number): int,double
- 字符串类型String
- 布尔类型Booleans
- 列表类型List和Set类型
- Map类型
除上述类型外,还有Runes and Grapheme Clusters 和 Symbols类型,具体作用前者好像是用于保存特殊字符,后者和js的symbol类似,以后用到再总结用法了。
1. 数值变量
1. 定义方法
int num1 = 3;
double num2 = 3.053;
var expNum = 1e5;
print(expNum); // 100000
// 自动识别为double;
var res = num1 + num2;
print(res); // 6.0
2. 类型转换
- String转int或者double, 使用*.parse方法
- double, int转String使用toString等方法
// int -> String
print(num1.toString());
// double -> String
print('double2string ${res.toString()}'); // 6.053
// 保留小数点后的位数
print('double2String ${num2.toStringAsFixed(2)}'); // 3.05
// 保留有效数字
print('