Dart语言零基础学习笔记(四)
Dart运算符
算数运算符
+ - * / %(取余) ~/(取整)
int a = 10;
int b = 3;
print(a + b);//加 13
print(a - b);//减 7
print(a * b);//乘 30
print(a / b);//除 3.3333333333333335
print(a % b);//取余 1
print(a ~/ b);//取整 3
关系运算符
==(等于)
!=(不等于)
>(大于)
<(小于)
>=(大于等于)
<=(小于等于)
int a = 10;
int b = 3;
print(a == b);//判断是否相等 false
print(a != b);//判断是否不等 true
print(a > b);//判断是否大于 true
print(a < b);//判断是否小于 false
print(a >= b);//判断是否大于等于 true
print(a <= b);//判断是否小于等于 false**
if (a > b) {
print(a > b);
} else {
print(a < b);
}
//true
逻辑运算符
&& 逻辑与,可以理解为并且的意思.全部true,值为true,否则值为falsh。
bool a = true;
bool b = false;
bool c = true;
bool d = false;
print(a && b); //false
print(a && c); //true
print(b && c); //false
print(c && d);//false
String name = "adadou";
int age = 18;
String sex = "women";
if (age == 18 && sex == "women") {
print("$name $age $sex");
} else {
print('查无此人');
}
//adadou 18 women
|| 逻辑或,可以理解为或者的意思,也就是条件可以2取一
bool a = true;
bool b = false;
bool c = true;
bool d = false;
print(a || b); //true
print(a || c); //true
print(b || c); //true
print(b || d);//false
String name = 'adadou';
String work = "student";
int age = 18;
if (work == "student" || age == 18) {
print("找的就是你 $name");
} else {
print("查无此人");
}
//找的就是你 adadou
! 逻辑非 (一元表达式)(布尔类型)
bool a = true;
print(!a);//false
赋值运算符
基础赋值运算符
=
int a = 1;
int b = 2;
int c = a + b;
print(c);//从右往左将值赋给c 3
??=
int b = 2;
var c;
b ??= 100; //如果b为空的话 将100赋值给b 否则b为原来的值
c ??= 200;//如果c为空的话 将200赋值给c
print(b); //2
print(c); //200
复合赋值运算符
+= 、 -= 、 *=、/=、%=、~/=
var a = 20;
var b = 20;
var c = 20;
a += 1; //a = a + 1;
print(a); //21
b -= 1; //b=b-1
print(b);//19
c *= 2; //c=c*2
print(c);//40
Dart条件判断
if else
void main() {
bool f = true;
if (f) {
print("f is true;");
} else {
print("f is flase");
}
switch case
var sex = "men";
switch (sex) {
case "men":
print("sex is men ");
break;
case "women":
print("sex is women");
break;
default:
print("error!!");
}
//sex is men
三目运算符
可以理解为条件 ? 结果1 : 结果2
里面的 ?号是格式要求。也可以理解为条件是否成立,条件成立为结果1,否则为结果2。
var flag = false;
var c=flag?"this is ture":"this is false";
print(c);
??运算符
?? 运算符称为 null 合并运算符,用于定义可以为 null 值的类型和引用类型的默认值。 如果此运算符的左操作数不为 null,则此运算符将返回左操作数;否则返回右操作数。
var a;
var b = a ?? 10;//如果a为空,将10赋值给b
print(b);//10
var a=22;
var b = a ?? 10;//如果a不为空,将a的值赋给b
print(b);//22
}
Dart类型转换
Number与String之间类型转换
number转换成String
var num = 100;
var str = num.toString();
print(str is String);//true
String转换成number
String a = '100';
var num = int.parse(a);
print(num is int);//true
String a = '100.01';
var num = double.parse(a);
print(num is double);//true
try … catch
var a = " ";
try {
var b = int.parse(a);
print(b);
} catch (err) {
print("a=' ' ");
}
//a=' '
其他类型转换成Booleans类型
//isEmpty:判断字符串是否为空
var str = '';
if (str.isEmpty) {
print('str is empty');
} else {
print("$str is not empty");
}
//str is empty