因为工作原因有很长时间没有写了,分享一下flutter学习的一些简单的总结内容,这篇内容介绍一下dart的变量,变量是用于存储信息的"容器"是最基础的。
dart中没有public、private、protect关键字,如果一个变量以下划线(_)开头,通常表示其是库私有的,dart的标识符以字母或下划线开头,后跟任意的字符、数字组合。
变量:
1、明确声明如:String name =‘yf’;
2、类型推导方式var/final/const
var声明变量 ,编译器会根据变量值的类型自动为该变量指定类型,一旦确定赋值后,该变量的类型就确定了,不能再更改了;const/fianl两者都为声明常量;const 需要在编译时就要有确定的值;final可以通过函数/计算获取为运行期间获取.
Object是dart所有对象的基类,包括int,Function,Null等,任意类型都可以用Object去声明。dynamic,声明变量可以表示任意类型。
dynamic和Object一样都能表示任意类型声明的变量可以改变类型。
区别:
dynamic会提供声明的变量的所有可能组合,而Object只是提供Object的属性与方法
如:Object sex = 'assdf'; print(sex.length);
dynamic 编译时不会推测数据类型,运行时会判断,Object在编译时就进行判断。
dynamic或者Object修饰的变量一旦赋值,编译器就能推断出该变量的具体的类型。
注:
变量的类型被确定,就不能再被更改
若声明了某个类型的变量但未对其初始化,则系统认为该变量当前值为null
若有不对之处还希望指正为谢!@~@
网友评论