zoukankan      html  css  js  c++  java
  • Dart学习笔记-运算符-条件表达式-类型转换

    Dart学习笔记-运算符-条件表达式-类型转换

    一、运算符

    1.算术运算符

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

    2.关系运算符

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

    3.逻辑运算符

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

    4.赋值运算符

    // 基础赋值运算符
    = (变量赋值)
    ??= (如果前面的变量为null时 就赋值,不为null就不赋值)
    
    // 复合赋值运算符
    += (加等)
    -= (减等)
    *= (乘等)
    /= (除等)
    %= (余等)
    ~/= (整等)
    main() {
        var a;
        a ??= 123;
        print(a);  // a是null,所以把123赋值给a,输出123
    
        var b = 456;
        b ??= 789;
        print(b);  // 输出456
    }

    5.??运算符

    main() {
      var flag;
      // 如果flag为null则赋值hello给temp,如果不为null,就吧flag的值赋给temp
      var temp = flag ?? 'hello';
      print(temp);  // 输出 hello
    
      var flag2 = 123;
      var temp2 = flag2 ?? 'hello';
      print(temp2);  // 输出 123
    }

    二、条件表达式

    1.if-else

    main() {
        var a=3, b=3;
        if(a > b){
            print('a > b');
        }else if(a < b){
            print('a < b');
        }else {
            print('a == b');
        }
    }

    2.swith-case

    main() {
      var a = 3;
      switch (a) {
        case 1:
          print('a==1');
          break;
        case 2:
          print('a==2');
          break;
        default:
          print('a不等于1也不等于2');
          break;
      }
    }

    三、三元表达式

    main() {
      var flag=true;
      // 如果flag为true会赋值给temp :左边的内容,如果为false会赋值:右边的内容
      String temp=flag?'我是true':'我是false';
      print(temp);  // 输出 '我是true'
    }

    四、类型转换

    1.字符串转换数字

    main() {
      // str转换成number
      String temp1 = '123';
      var temp2 = int.parse(temp1);
      print(temp2 is int);  // true
    }

    2.浮点类型转换

    main() {
      // str转换成double类型
      String temp1 = '123.26';
      var temp2 = double.parse(temp1);
      print(temp2 is double);  // true
    }

    3.数字转字符串

    main() {
      // 数字转字符串
      int temp1 = 123;
      double temp2 = 123.56;
      var temp3 = temp1.toString();
      var temp4 = temp2.toString();
      print(temp3);
      print(temp4);
      print(temp3 is String);  // true
      print(temp4 is String);  // true
    }
  • 相关阅读:
    [Erlang05]gen_server怎么去写eunit?
    [Erlang04]为什么有了rpc还有net_kernel:connect/1?
    [Erlang03]Erlang有哪些好用的静态分析工具?
    [SIP01]SIP Header Fields里面各字段用途
    [SIP00]SIP 概念总结
    [Erlang00]:gen_server:reply/2
    Makefile教程
    Linux 环境下开发 STM32
    Ubuntu 18.04 + ROS Melodic + TurtleBot3仿真
    Ubuntu系统鼠标不能点击
  • 原文地址:https://www.cnblogs.com/blog-rui/p/11507345.html
Copyright © 2011-2022 走看看