• Dark 运算符


    1 赋值运算符 ??=

    b ??= "hello" 若b为空,则把"hello"赋给b 。

    2 三目运算符

    boolean ? expression1 : expression2 ; 

    3  a ?? b

    string a ="";
    string b = "b";
    string c = a??b ,若a不为空,则把a赋给c,否则把b赋给c

    4 for语句

    var list = [1,2,3];
    for(int a in list){
      print(a);
    }

    5 方法特性

    • 方法也是对象,具体类型Function
    • 返回值类型、参数类型都克省略
    • 箭头语法: => expression 是 {return expr;} 缩写
    • 都有返回值,默认return null
    printPerson("koala", 18);
    
    printPerson(name,age){ //省略了返回值和参数类型
      print("name=$name ,age=$age");
    }
    
    getName(name) => "name $name";//箭头语法 后面跟着一个返回的表达式 ,这里返回一个字符串

    6 可选参数(在flutter控件初始化时经常用到)

    基于名称用{}表示,调用时需指定参数名称。
    printPerson(name, {int age, String gender}) {
      print("name=$name,age=$age,gender=$gender");
    }
    
    printPerson("koala", age: 18);

    基于位置用[]表示

    printPerson1(name, [int age, String gender]) {
      print("name=$name,age=$age,gender=$gender");
    }
    
    printPerson1("koala", 18, "male");

    7 方法对象

    方法可作为对象赋值给其它变量
    void main(){
      Function function = printHello;//将方法名称赋给变量
      function('koala');//调用方法
    }
    
    
    printHello(String name){
      print("hello,$name");
    }

    方法可作为参数传递给其它方法

    void main() {
      var list = [1, 2, "a", true];
      list.forEach(test);
    }
    
    void test(Object obj) {
      if (obj is String) print(obj * 2);
      if (obj is num) print(obj * 2);
    }
  • 相关阅读:
    JavaScript技巧大全
    rs.open sql,conn 与conn.execute(sql)的区别
    ASP.NET中常用的优化性能的方法(1)
    JavaScript实现图片的不间断连续滚动
    Windows下安装和配置netbeans以使用C/C++全过程
    hdu Hat's Fibonacci
    hdu Big Number
    hdu Buy the Ticket
    acm steps chapter3总结
    如何从U盘引导安装win7/xp
  • 原文地址:https://www.cnblogs.com/suiyilaile/p/11001035.html
Copyright © 2020-2023  润新知