美文网首页
3.Dart-运算符

3.Dart-运算符

作者: 你的胡霸霸 | 来源:发表于2021-09-01 11:44 被阅读0次

/**

* 1.Dart运算符和其他语言一样

*  算术运算符

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

*

* 关系运算符

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

*

* 逻辑运算符

*      !    &&    ||

*

* 赋值运算符

*    基础赋值运算符  =    ??=

*    复合赋值运算符  +=  -=  *=  /=  %=  !/=

*

* 自增 ++

* 自减 --

* 在赋值运算中,如果++, --写在前面就是先运算,后赋值, 写在后面就是先赋值后运算

*

* 条件表达式

* if else    switch case

* 三目运算符  a ? b : c

*  ??运算符

*/

main(List<String> args) {

  // specialExample();

  // numberAndStringExchange();

  othersTransformBool();

}

// 这里是 ??=  和  ??的使用

void specialExample() {

  int b;

  print(b); //声明了一个变量, 没有赋值那个这个变量的值是 null,哪怕你已经声明了类型, 在js中是undefined

  //  ??= 表示如果b为空值, 那么b就等于25

  b ??= 25;

  print(b);

  // ?? 运算符,

  var a;

  // 下面的例子的意思是  ??直接先看a是不是为空null, 如果a是空,那么就把30赋值给c ,如果a不是空null,那么就把a的值赋值给c

  var c = a ?? 30;

  print(c);

}

// Number和String的类型转换

void numberAndStringExchange() {

  // Number类型转成String类型toString()

  var n = 100;

  var s = n.toString();

  var sb = s is String;

  print("s是字符串类型 $sb");

  // String类型转成Number类型, parse

  String str = "124";

  var num1 = int.parse(str);

  var num2 = double.parse(str);

  var bl = num1 is int;

  print('num1=$num1, num1 is int = $bl');

  print(num2);

  String str1 = "124.3";

  // 这里会报错, 浮点类型的字符串不能用int.parse去转换,要用double,主义类型的对应

  // var num3 = int.parse(str1);

  // 这里我们可以使用try catch来兜住这异常

  var num3;

  try {

    num3 = int.parse(str1);

  } catch (e) {

    print(e);

    num3 = double.parse(str1);

  }

  print('num3 = $num3');

}

// 其他类型转换成Bool类型

void othersTransformBool() {

  var str = ""; //代表空字符串

  // 判断字符串是不是空,""这样的就是空字符串

  var emp = str.isEmpty;

  if (emp) {

    print("str是空字符串=$str");

  } else {

    print("str不是空字符串=$str");

  }

// 未赋值的变量是null

  var nu;

  if (nu == null) {

    print("nu是$nu");

  } else {

    print("nu=$nu");

  }

// 注意: 这里和js等其他语言不一样, 其他语言直接可以if(str)这样, 有一个默认的类型转换,

// 但是Dart里面bool值不和其他类型转换的, 只能比较, 空字符串是"",可以用isEmpty来判断,

// 数字0,也是需要 ==0这样去比较, null值,也是==null进行比较得到bool值

  // 这里还有个特殊的就是NaN,非数字, 比如0不能作为除数

  var x = 0 / 0; //这里不会报错,返回的是一个非数字NaN

  if (x.isNaN) {

    print("x是非数字$x");

  } else {

    print("x是数字$x");

  }

}

相关文章

  • 3.Dart-运算符

    /** * 1.Dart运算符和其他语言一样 * 算术运算符 * +(加) -(减) *(乘) /(除) ...

  • python常用运算符的使用

    python七类运算符 算术运算符比较运算符逻辑运算符赋值运算符成员运算符身份运算符位运算符 赋值运算符 运算符描...

  • 运算符与字符串

    运算符 算数运算符、比较运算符、赋值运算符、逻辑运算符比较运算符:>、<、>=、<=、==、!=赋值运算符:=、+...

  • 4. Python运算符

    算数运算符 加法运算符: + 减法运算符: - 乘法运算符: * 除法运算符: / 幂运算符: ** 整除运算符:...

  • Golang——运算符和格式化输出

    运算符 算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、其他运算符 算术运算符 + 相加- 相减* ...

  • Go语言基础之运算符

    运算符 Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 算术运算符 运算符描...

  • 2018年6月13日【Python学习笔记】

    一、运算符 运算符:算数运算符、比较运算符、赋值运算符、逻辑运算符 1.比较运算符:>、<、>=、<=、==、!=...

  • 第二节: 运算符

    算术运算符: 赋值运算符: 比较运算符: Python位运算符 逻辑运算符: 成员运算符: 身份运算符:

  • Java基础学习二 运算符

    运算符 1,运算符-算术运算符(++、--) 代码示例: 2,运算符-关系运算符 运算符号解析运算符号解析>大于<...

  • Python运算符、格式化输出、条件语句、循环语句、列表、元组

    运算符包括:算术运算符、比较运算符、赋值运算符、逻辑运算符、成员运算符、身份运算符 算术运算符 % 取模(余数...

网友评论

      本文标题:3.Dart-运算符

      本文链接:https://www.haomeiwen.com/subject/ngptwltx.html