Dart 常见的变量 常量 数据类型

定义变量
Dart 变量:明确声明Explicit 变量类型 变量名称=变量值 明确声明之后的变量不可以被其他类型的变量赋值
dart是一个强大的脚本类语言,可以不预先定义变量类型自动会类型推导
dart中定义变量可以通过var关键字 可以通过类型来申明变量
如:
var str='this is var';
String ste='this is var';
int str=123;
注意 var 和类型 不同时存在
类型推导
var/dynamic/const/final 变量名称=变量值
var 在使用时会直接取当前赋值的变量类型 获取之后就确定下来了 不可以在使用其它类型给该变量赋值 var name="999" name=11 错误
dynamic 动态确定变量类型 不建议该写法 容易出现类型安全问题
例如:dynamic name="jack"; name=18

Dart 常量:final和const 修饰符 在获得了确定值之后不可以被修改
const值不变 一开始就得赋值
final可以开始不赋值 只赋值一次
final是运行时动态获取的一个常量值 const是在编译期间就确定下来的常量值
const name="阿" const date=DateTime.now() 错误使用 final date=DateTime.now() 正确
:name的复制是在编译的时候就给定了确定的字符串 是正确的 final可以在运行时给定的一个常量 final和cons赋值之后都不可以再被改变
final name='oshaj'; final String name='jak';
const br=1000; const doubel atm=1.00
Dart的命名规则:
1,变量名字必须由数字 字母 下划线和美元符$组成
2,注意:标示符开头不能是数字 禁止 var 2str=...
3,标示符不能保留字和关键字 禁止 var if=...
4,变量名字区分大大小写:如 age和Age是不同的变量 (所以建议不要用一个单词大小写区分两个变量)
5,标示符(变量名称)一定要见名思意:变量名称建议用名字 方法名字建议用动词

数据类型
1,数字类型 int double 2,布尔类型 bool
3,字符串类型 String String name="09090" if(name){}错误写法 Dart中不可以使用非空即真用法
4,集合 Dart有三种聚合类型List/Set/Map
List List =['a'];这种方式是推导List的数据类型
List<int> intList=[1,2,3]; 知道List的数据类型 list.add(xxx); list.remove(xxx);list.removeAt(index)// 根据下标删除
Set set={'a','d'} 这种方式是推导Set的数据类型
Set<int> intSet={1,2} 知道Set的数据类型为int set.add(xxx); set.remove(xxx);
Map map={'name':'小妮'};这种方式是推导Map的数据类型 map['name']根据key获取值
Map<String,String> typeMap={'name':'小妮'};指定Map数据类型
print('${map.entries}'); 获取所有内容
print('${map.keys}'); 获取所有key
print('${map.values}'); 获取所有key
map.containKey('xxx'); true || false 判断是否包含某个key
map.remove('xxx');根据key删除元素
5,函数 类型是Function
函数的定义: 返回值 函数名称(参数列表){函数体 return 返回值}
完整的函数定义 int sum(num num1,num num2){ return num1+num2}
箭头函数 内容不能是语句 只能是一个表达式
sum(num num1,num num2)=>num1*num2
参数:两种类型 :可选参数 必选参数
可选:命名可选参数
funcName({int age,double height}){}
调用 命名可选参数调用不区分顺序 funcName() funcName(age:1) funcName(age:1,height:9.0)
funcName([int age,double height]){}
调用 位置可选参数时必须按照声明时的顺序传参funcName() funcName(1) funcName(1,9.0)
必选:
命名必选参数
funcName(String name) funcName('jack')
参数默认值:可选参数才有默认值 必选没有
匿名函数 funcName(a){print(a)}
posted @ 2021-03-25 16:36  lxn*  阅读(123)  评论(0编辑  收藏  举报