Dart:运算符、条件表达式、类型转换整理


前言

本文是笔者关于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);   //判断是否相等
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');
}

逻辑运算符

bool flag=false;
print(!flag);   //取反
/* && 并且:全部为true的话值为true 否则值为false */ 
bool a=true;
bool b=true;
print(a && b);
/* ||或者:全为false的话值为false 否则值为true */ 

复合赋值运算符

int num5 = 10;
num5 += 10; // num5 = num5 + 10;
num5 -= 2; // num5 = num5 - 2;
num5 *= 2; // num5 = num5 * 2;
num5 /= 2; // num5 = num5 / 2;
num5 %= 5; // num5 = num5 % 5;
num5 ~/= 3; // num5 = num5 ~/ 3; //自增自减运算符

自增自减运算符

//自增
var a=10;
a++;   //a=a+1;
print(a); 11

var a=10;
++a;   //a=a+1;
print(a); 11

//自减
var a=10;
a--;   //a=a-1;
print(a) 9;

var a=10;
--a;   //a=a-1;
print(a) 9;

//赋值运算 如果++ --写在后面 先赋值后运行运算
var a=10;
var b = a++;   //b = a=a+1;
print(a); 11
print(b); 10

var a=10;
var b = a--;   //b = a=a-1;
print(a); 9
print(b); 10

二、条件表达式

条件表达式上Dart与其他语言几乎没有出入,可以类比Java、C++

If else条件表达式

var score=41;
  if(score>90){
    print('优秀');
  }else if(score>70){
     print('良好');
  }else if(score>=60){
    print('及格');
  }else{
    print('不及格');
  }

swtich表达式

 switch(index){
  case index:
       break;
  default:
       break;
 }

三目表达式

 bool flag=false;
  String c=flag?'我是true':'我是false';
 int num6;
 int num7 = num6 ?? 24;//当num6为空时,将24的值赋给num7
 print(num7); // 24

三、类型转换

Number和String类型转换

 //类型转换 Numer --> String (toString()) String --> Number (parse())
 String str3 = '123';
 int num8 = int.parse(str3); //123
 print(num8 is int); // true
 
 String str4 = '123.3'; // 如果 String str4 = ''; 空值会报错
 double num9 = double.parse(str4);
 print(num9 is double); // true
 
 //转换失败解决方案
 try{
  String str5 = '';
  double num10 = double.parse(str5);
  print(num10);
  //print(num10 is double); // 报错 String 不能为空
 }catch(err){
  print(0);
}

 //Number --> String toString()
 int num11 = 123;
 String str6 = num11.toString();
 print(str6 is String); // true

Boolean类型的转换

 String str7 = '';
 if(str7.isEmpty){   
  print('str7 空值');
 }else{
  print('str7 不为空');
 }

 int num12 = 123;
 if(num12 == 0){
  print('为 0'); 
 }else{
  print('不为 0');
 }

 int num13 = 0 / 0; // NaN
 if(num13.isNaN){
  print('NaN');
 }
} 

总结

以上是关于Dart中运算符、条件表达式、类型转换整理,欢迎大家补充

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值