美文网首页
P7 P8 Dart 函数,函数的定义 可选参数 默认参数 命

P7 P8 Dart 函数,函数的定义 可选参数 默认参数 命

作者: 贝灬小晖 | 来源:发表于2020-03-03 17:06 被阅读0次

    1.方法定义

    //1.入口方法为main方法
    //2.自定义方法可以放在main方法内部(使用的时候要在方法下面),也可以在外部
    //3.方法里面可以嵌套方法,但功能只是在局部作用域

    int sumNum(int n){
      var sum = 0;
      for(var i=0;i<n;i++){
        sum += i;
      }
      return sum;
    }
    

    2.函数

    形参(方法的参数) 实参(执行方法时候的参数)
    //[] 里面的参数是可选参数,默认参数 sex= ‘男’
    //String sex='男' 这个叫做默认参数,这里默认参数是写在可选参数内的,默认参数必传,
    //如果使用命名参数,在可选参数里就可以不必传了

     //可选参数,默认参数
    String printUserInfo(String name,[String sex='男',int age]){
      if(age != null){
        return "name年纪$age";
      }else{
        return "name年纪未知";
      }
    }
    //调用
      print(printUserInfo("name",null,3));
    
    
    //命名参数
    String printUserInfo1(String name,{String sex='男',int age}){
      if(age != null){
        return "name年纪$age";
      }else{
        return "name年纪未知";
      }
    }
    //调用
      print(printUserInfo1("name",age: 21));
    

    其他:方法当做参数的

    箭头函数:你不能写多句话,只能写一句话

    var myList = ['1','2','3'];
    myList.forEach((value){
        print(value);
    });
    print("=======");
    myList.forEach((value)=>print(value));
    myList.forEach((value)=>{
     print(value)
    });
    

    自执行方法

    (n){
      print(n);
    }(100);
    

    全局变量 局部变量

    3.闭包

    // 解决问题:常驻内存,不污染全局(有全局变量和局部变量的特点)
    //方法里面嵌套一个方法,并且返回这个方法就是一个闭包

    fuc(){
     var a = 123;
     return(){
      a++;
    print(a);
       };
    }
    

    main函数中调用

    var b = fuc();
    fuc()();  //124
    fuc()(); //124
    fuc()();//124
    b();//124
    b();//125
    b();//126
    

    相关文章

      网友评论

          本文标题:P7 P8 Dart 函数,函数的定义 可选参数 默认参数 命

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