持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第4天,点击查看活动详情
今日目标
今天主要学习Dart中的运算符,条件判断,类型转换这个是三个概念
运算符
在dart中的运算符其实和其他语言中的运算符基本是一样的,有算术运算符、关系运算符、逻辑运算符、赋值运算符这几种
算术运算符
有: + - * / ~/ %
关系运算符
有: == != > < >= <=
返回值是true或者false,主要用在条件判断里面
逻辑运算符
有:! && ||
返回值也是true或者false
!是取反操作, 如果变量a = true 则 !a 得到的结果就是 false
&&是并的操作,要两个变量都是真的时候才返回true否则就返回false
||是或的操作,如果两个变量中只要有一个为真就返回true,否则返回false
赋值运算符
有: = ??= += -= *= /= ~/= %=
赋值运算的执行顺序是从右向左执行
??= 表示如果变量为空的话就把右边的值赋值给变量
剩下的其他运算符和js的里运算符是同样的意思
条件判断
和js里的含义一样,也有if_elseif_else,swtich_case这样的语法
三目运算
三目运算也和js里的相同
bool flag = true;
String str = flag ? '这是一个真值' : '这是一个假植';
??运算符
var a;
var b = a ?? 10;
这里其实也和js es2021里的新语法??含义相同,如果变量a没有值,则将10赋值给b,如果变量a有值,则将变量a的值赋值给b。
类型转换
Number和String之间的转换
String类型转Number类型可以通过int.parse()来实现
var str = '123'
var b = int.parse(str);
print(b is int);
通常情况下建议使用double.parse()来进行类型转换,因为int.parse()是不能转换浮点型的数据,而double.parse()是既可以转换浮点型也可以转换整型的数据。
Number类型转String类型可以通过toString()来实现
var num = 12312;
var str = num.toString();
print(str is String);
其他类型和布尔类型转换
有的时候不知道字符串变量的值是否为空,可以通过isEmpty来判定字符串是否为空
var str = '';
if (str.isEmpty) {
print('str 是一个空值');
};
又或者判断一个数字是否是数字
var a=0/0; // 这里a=NaN
if (a.isNaN){
print('a不是数字');
};
今天就学习Dart的一些基础知识到这里,继续加油,卷起来~~~