美文网首页
Dart -- Function

Dart -- Function

作者: 小懒豆 | 来源:发表于2019-07-12 19:15 被阅读0次
    main函数(特殊函数),是程序的入口。
    void main(){
     .....
    }
    
    函数声明
    • 可以指定返回值 函数名 参数 函数体
    • 不指定返回值 也可以
    • 如果函数体 只有一个表达式 可以用箭头函数形式,箭头函数 返回一个值
      test14(int c) => c+5;
    参数
    • 参数分必要参数和可选参数,可选参数必须在参数列表的最后。

      • 可选参数

        • 可选参数分为可选位置参数和可选命名参数
        • 二者都可以定义默认值,但是默认值必须是编译时常量。
          1. 可选参数方法声明,
          2. 使用{}括起来参数声明
          3. 使用冒号:设置默认值
          4. 不设置默认值又不传值 则值为null
          // 可选命名参数
          void test01(){
            test17(a:true,b:3);//指定可选参数名字进行传值,可以不全传值
          }
          //可选参数方法声明,
          //使用{}括起来参数声明 
          //使用冒号:设置默认值  
          //不设置默认值又不传值 则值为null
          void test17({bool a,int b,String c:'ccc'}){
            if(a){
              print(b);
              print(c);
            }else{
              print(b*b);
            }
          }
          
          可选位置参数
          //使用[]将参数括起来,放在参数 列表最后
          //可放多个参数
          //可设置默认值
          String test19(String from, String msg, [String device,bool sex=true]) {
              var result = '$from says $msg';
              if (device != null) {
                result = '$result with a $device $sex';
              }
              return result;
            }
          void test01(){
          //调用时,可选参数的位置和类型要与声明时一致
            String result = test19('from','msg','ccc',false);
            print(result);
            }
          
    把函数当参数传递
    void test01(){ //将函数传递进去
      test22(test21,4);
    }
      
    void test22(Function f,int p){  //参数中有个类型为函数的参数
      f(p);
    }
      
    void test21(int a){  //定义一个函数
      print(a);
    }
    
    把函数赋值给变量
    void test01(){
      var t = test24;//将函数赋值给变量
      t(3);//调用函数
    }
    
    void test24(int a){//定义一个函数
       print(a*a);
    }
    
    
    
    //所有函数都有返回值,如果没有显示返回,那么默认return null;
    void test01(){
      var result = test26(3);
      print(result);
    }
    
    test26(int a){//方法体内没有返回值
      print(a);
    }
    

    相关文章

      网友评论

          本文标题:Dart -- Function

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