var赋值后变量类型就确定,不能赋值成其他类型
Object类型可以赋值任意类型,只能调用自身设置的方法、属性
dynamic动态类型,和Object类似,不同之处在于可以调用不属于自己的方法、属性,但运行时才会报错
final声明常量,不能再赋值,在使用时才会初始化
const声明常量,不能再赋值,在编译时已经存在
int
double
bool
String 使用+来字符串拼接,但只能拼接字符串,不能拼接其他类型
List数组 支持forEach((item,index){})
Map类型 和js对象类型相同,但键必须用引号包裹
==会先判断类型,不同false
方法:
类型.parse(值); 非字符串类型的转换方法
数值.toString(); 转换成字符串类型
数值.toStringAsFixed(n); 转换成字符串类型且保留指定小数点位数,会四舍五入
数组方法
.add(x)往数组末尾添加元素
.addAll([x,x]) 往数组末尾添加数组
.first/.last 获取首/尾元素
代码示例:
void main() {
//var赋值后变量类型就确定,不能赋值成其他类型
var str='好帅';
//Object类型可以赋值任意类型,只能调用自身设置的方法、属性
Object obj=123;
obj='123';
//dynamic动态类型,和Object类似,不同之处在于可以调用不属于自己的方法、属性,运行时才会报错
dynamic d='123';
//final声明常量,不能再赋值,在使用时才会初始化
final f='good';
//const声明常量,不能再赋值,在编译时已经存在
const c='good';
}