在聲明變量的時候,除了var,還可以使用const和final,同時,在使用const和final的時候,可以省略var或者其他類型
var i = 10;
const i = 10;
final i = 10;
int i = 10;
const int i = 10;
final int i = 10;
const和final定義的都是常量,值不能改變,並且在聲明的時候就必須初始化
final time = new DateTime.now(); //Ok
const time = new DateTime.now(); //Error,new DateTime.now()不是const常量
var、final等在左邊定義變量的時候,並不關心右邊是不是常量
但是如果右邊用了const,那麼不管左邊如何,右邊都必須是常量
const list = const[1,2,3];//Ok
const list = [1,2,3];//Error
final list = [1,2,3];//Ok
final list = const[1,2,3];//Ok
final list = const[new DateTime.now(),2,3];//Error,const右邊必須是常量