Flutter学习04:Dart运算符、条件表达式、类型转换
Dart运算符
- 算术运算符
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| void main() { int a = 5; int b = 2;
print(a + b); // 加 print(a - b); // 减 print(a * b); // 乘 print(a / b); // 除 print(a % b); // 取余 print(a ~/ b); // 取整
var c = a * b; print("-------") print(c); }
====== 7 3 10 2.5 1 2 ------- 10
|
- 关系运算符
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| void main() { // == != > < >= <=
int a = 5; int b = 2;
print(a == b); // 判断是否相等 print(a != b); // 判断是否不等 print(a > b); // 判断是否大于 print(a < b); // 判断是否小于 print(a >= b); // 判断是否大于等于 print(a <= b); // 判断是否小于等于 if (a > b) { print("a大于b"); } else { print("a小于b"); } }
====== false true true false true false a大于b
|
- 逻辑运算符
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| void main() { // ! 取反
bool flag = true; print(!flag); // false
// && 并且:全部为true时值为true 否则值为 false
var a = true; var b = false; print(a && b); // false
// || 或者:全为false时值为false 否则值为true bool c = false; bool d = true; print(c || d); // true
// 如果一个人的年龄是20 或者 sex 女 的话我们打印这个人 int age = 30; String sex = "女"; if (age == 20 || sex == "女") { print("$age --- $sex"); } else { print("不打印"); } // 30 --- 女 }
|
- 赋值运算符
1 2
| 基础赋值运算符 = ??= 符合赋值运算符 += -= *= /= %= ~/=
|
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| // 1.基础赋值运算符 = ??=
int a = 5; print(a); // 5
// b ??= 20; 表示如果b为空的话把 20赋值给b var b; b ??= 20; print(b); // 20 // 2.符合赋值运算符 += -= *= /= %= ~/=
var a = 10; a += 10; // 表示 a = a + 10 print(a); // 20
|
条件表达式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| void main() { // 1. if else switch case
// 判断一个人的成绩 如果大于60显示及格 如果大于70显示良好 如果大于90显示优秀 var score = 75; if (score > 90) { print("优秀"); } else if (score > 70) { print("良好"); } else if (score > 60) { print("及格"); } else { print("不及格"); }
// 判断性别 var sex = "男"; switch (sex) { case "男": print("性别是男"); break; case "女": print("性别是女"); break; default: print("传入参数错误"); break; }
// 2.三目运算符
bool flag = true; String c = flag ? "我是ture" : "我是false"; print(c); // 我是ture
// 3. ?? 运算符 var a; var b = a ?? 10; print(b); // 10 }
|
类型转换
1 2 3 4 5 6
| // 1. Number与String类型之间的转换 // Number类型转换成String类型 toString()
double a = 3.14; String b = a.toString(); ;print(b);
|
- String类型转换成Number类型 parse()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| // String类型转换成Number类型 parse() String str = "123.1"; var myNum = double.parse(str); print(myNum is double); // 123.1
// 如果是空 String str1 = ""; try { // 防止报错 var num = double.parse(str1); print(num); print(num is double); } catch (err) { print(0); // 0 }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| // 3.其他类型转换成booleans类型
// isEmpty:判断字符串是否为空 var str2 = "xxx"; if (str2.isEmpty) { print("str2空"); } else { print("str2不为空"); // str2不为空 }
var num1; if (num1 == null) { print("空"); // 空 } else { print("非空"); }
var num2 = 0 / 0; print(num2); // NaN if (num2.isNaN) { print("NaN"); // NaN }
|
- Post title:Flutter学习04:Dart运算符、条件表达式、类型转换
- Post author:张建
- Create time:2023-03-31 00:51:12
-
Post link:https://redefine.ohevan.com/2023/03/31/Flutter学习/Flutter学习04:Dart运算符、条件表达式、类型转换/
-
Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.