Dart学习4、Dart运算符 条件判断以及类型转换

算术运算符

+(加) - (减) *(乘) /(除) ~/(取整) %(取余)

int a = 13;
int b = 5;
print(a+b);//加 18
print(a-b);//减 8
print(a*b);//乘 65
print(a/b);//除 2.6
print(a%b);//取余 3
print(a~/b);//取整 2

关系运算符

==(等于) !=(不等于) >(大于) < (小于) >=(大于等于) <=(小于等于)

int a = 5;
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
//关系运算符主要用于条件判断中

逻辑运算符

!(取反) &&(并且) ||(或者)

bool flag1 = true;
bool flag2 = false;
//&& 只有全部为true则输出true,否则为false
print(flag1 && flag2);//false
//|| 全为false则输出false,否则为true
print(flag1 || flag2);
//! 取反 true变成false  false变成true
print(!flag1);//false

赋值运算符

  • 基础赋值运算符 = ??=
int a = 1;
int b = 2;
int c = a+b;//把a+b的值赋值给c
print(c);//3
// ??= 表示如果a为空的话,则把5赋值给a
int a = 4;
a ??= 5;
print(a);//因为a已经有值,所以输出4
int c;
c ??= 6;
print(c);//6
  • 复合赋值运算符 += -= *= /= %= ~/=
var a = 10;
//假设要给a+10 我们可写成
a = a + 10;
print(a);//20
//也可写成
a+=10;
print(a);/20
//复合赋值运算是由算术运算符和赋值运算符=结合而成,剩下的就不一一举例啦

条件表达式

  • if else switch case
//判断成绩 大于60及格  大于70良好 大于90优秀
int a = 75;
if(a > 90){
	print("优秀");
}else if(a > 70){
	print("良好");
} else if (a > 60){
	print("及格");
} else {
	print("不及格");
}
//最终输出 良好
var sex = "男";
switch(sex){
	case "男":
		print("是男的");
		break;
	case "女":
		print("是女的");
		break;
	default:
		print("啥也不是");
		break;
}
//最终输出 是男的
  • 三目运算符
//一些简单的条件判断可以用三目运算表达哦
var flag = true;
var str;
if(flag){
	str = "我是 true";
} else {
	str = "我是 false";
}
print(str);
//以上可以简写为
str = flag ? "我是 true" : "我是 false";
print(str);
  • ??运算符
//?? 表示a为空的情况下把10赋值给a  只有在a为空的情况才能使用?? ,不然无效哦
var a;
var b = a ?? 10;
print(b);//10

类型转换

  • Number与String类型之间的转换
    Number类型转成String类型 toString()
var num = 456;
var str = num.toString();
print(str is String);//输出 true

String类型转成Number类型 parse

//字符不能为空哦,不然会报错。如果为空还要转换的话可以使用try ... catch哈
String str = "123";
var num = int.parse(str);
//检测一下 用到之前学的 is 哦
print(num is int);//输出true
  • 其他类型转换乘Booleans类型
//isEmpty:判断字符串是否为空
var str = '';
if(str.isEmpty){
	print("str is null");
}
//判断Number类型是否为0 
var num1 = 123;
if(num1 == 0){
	print("0");
} else {
	print("不为0");
}
//判断变量是否为空
var num2;
if(num2 == null) {
	print("NULL");
} else {
	print("非空");
}
//判断Number类型是否为NaN
var num3 = 0 / 0;
if(num3.isNaN){
	print("NaN");
}

记录 Dart 学习

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JMchen123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值