Dart中的函数-----上

2019-08-20  本文已影响0人  二猪哥

一、内置方法/函数

print();

print('调用系统内置的方法');

二、自定义方法

 自定义方法的基本格式:    
 返回类型  方法名称(参数1,参数2,...){
     方法体 
     return 返回值;
 }

实现:
 void printInfo(){
   print('我是一个自定义方法');
 }

 int getNum(){
   var myNum=123;
   return myNum;
 }

 String printUserInfo(){
   return 'this is str';
 }

 List getList(){
   return ['111','2222','333'];
 }

三、传参

1、一个参数
    int sumNum(int n){
      var sum=0;
      for(var i=1;i<=n;i++)
      {
        sum+=i;
      }
      return sum;
    } 

    var n1=sumNum(5);
    print(n1);
    var n2=sumNum(100);
    print(n2);


2、两个参数
    String printUserInfo(String username,int age){  //形参
        return "姓名:$username---年龄:$age";
    }
    print(printUserInfo('张三',20)); //实参


3、定义一个带可选参数的方法
    String printUserInfo(String username,[int age]){  //形参

      if(age!=null){
        return "姓名:$username---年龄:$age";
      }
      return "姓名:$username---年龄保密";
    }
    print(printUserInfo('张三',21)); //实参
    print(printUserInfo('张三'));


4、定义一个带默认参数的方法:String sex='男'
    String printUserInfo(String username,[String sex='男',int age]){  //形参
      if(age!=null){
        return "姓名:$username---性别:$sex--年龄:$age";
      }
      return "姓名:$username---性别:$sex--年龄保密";
      }
     print(printUserInfo('张三'));  //姓名:张三---性别:男--年龄保密
     print(printUserInfo('小李','女'));  //姓名:小李---性别:女--年龄保密
     print(printUserInfo('小李','女',30));  //姓名:小李---性别:女--年龄:30

5、定义一个命名参数的方法
  String printUserInfo(String username,{int age,String sex='男'}){  //形参

      if(age!=null){
        return "姓名:$username---性别:$sex--年龄:$age";
      }
      return "姓名:$username---性别:$sex--年龄保密";

  }

  print(printUserInfo('张三',age:20,sex:'未知')); //姓名:张三---性别:未知--年龄:20

6、实现一个 把方法当做参数的方法
第一种形式:
  var fn=(){
    print('我是一个匿名方法');
  };      
  fn();   //我是一个匿名方法

第二种形式:
  //方法
  fn1(){
    print('fn1');
  }

  //方法
  fn2(fn){
    fn();
  }

  //调用fn2这个方法 把fn1这个方法当做参数传入
  fn2(fn1);   //fn1

方法的作用域

//方法的作用域
  void xxx(){

      aaa(){

          print(getList());
          print('aaa');
      }
      aaa();
  }

  // aaa();  错误写法 

  xxx();  //调用方法
上一篇 下一篇

猜你喜欢

热点阅读