小菜鸡开始学习flutter之四

59 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 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);

image.png

通常情况下建议使用double.parse()来进行类型转换,因为int.parse()是不能转换浮点型的数据,而double.parse()是既可以转换浮点型也可以转换整型的数据。
Number类型转String类型可以通过toString()来实现

var num = 12312;
var str = num.toString();
print(str is String);

image.png

其他类型和布尔类型转换

有的时候不知道字符串变量的值是否为空,可以通过isEmpty来判定字符串是否为空

var str = '';
if (str.isEmpty) {
    print('str 是一个空值');
}; 

image.png

又或者判断一个数字是否是数字

var a=0/0;  // 这里a=NaN
if (a.isNaN){
print('a不是数字');
};

image.png

今天就学习Dart的一些基础知识到这里,继续加油,卷起来~~~