【Flutter】Dart 函数 ( 函数构成 | 私有函数 | 匿名函数 | 函数总结 )

举报
韩曙亮 发表于 2022/01/10 23:39:36 2022/01/10
【摘要】 文章目录 一、Dart 函数构成二、Dart 私有函数三、Dart 匿名函数四、完整代码示例五、Dart 方法总结六、 相关资源 一、Dart 函数构成 Dart ...





一、Dart 函数构成



Dart 函数构成 : 方法名 , 参数 , 返回值 ;


返回值类型 :

  • ① 缺省 : 返回值类型可以缺省 ;
  • ② 空类型 : 返回值类型可以设置为 void ;
  • ③ 真实类型 : 返回值类型可以设置为真实的数据类型 ;

方法名 :

  • ① 匿名方法 : 不需要方法名 ;
  • ② 普通方法 : 除匿名方法之外的其它方法都需要方法名 ;

参数 :

  • ① 组成 : 参数包括 参数类型 , 参数名 ;
  • ② 类型缺省 : 参数类型可以缺省 ;
  • ③ 参数分类 : 可选参数 , 默认参数 ;

标准方法示例 :

  /// 标准方法
  /// 返回值是 int 类型
  /// 函数名是 sum
  /// 参数是 int num1, int num2
  int sum(int num1, int num2){
    return num1 + num2;
  }

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7




二、Dart 私有函数



私有方法 :

  • 简介 : 只有在当前文件中可以访问的方法称为私有方法 ;
  • 格式 : 在方法名之前添加下划线 , 标识该方法是私有方法 ;

私有方法示例 :

  /// 该方法是私有方法
  int _minus(int num1, int num2){
    return num1 - num2;
  }

  
 
  • 1
  • 2
  • 3
  • 4




三、Dart 匿名函数



匿名方法 : 只有参数列表和方法体 , 没有方法名称 , 匿名方法可以赋值给一个变量 ,

匿名方法 与 命名方法 相对应 , 普通的方法就是命名方法 ;

匿名方法格式如下 : 括号中是参数列表 , 大括号中是方法体 ;

(参数类型 参数名, 参数类型2 参数名2){
	/// 匿名方法方法体
};

  
 
  • 1
  • 2
  • 3

匿名方法示例 :

  /// 匿名方法示例
  anonymousFunction(){
    var list = ['Tom', 'Jerry'];
    list.forEach(
        /// 下面的方法是匿名方法, 只有参数列表和方法体
        (i){
          print(list.indexOf(i));
        }
    );
  }

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10




四、完整代码示例



class Function{

  /// 标准方法
  /// 返回值是 int 类型
  /// 函数名是 sum
  /// 参数是 int num1, int num2
  int sum(int num1, int num2){
    return num1 + num2;
  }

  /// 该方法是私有方法
  int _minus(int num1, int num2){
    return num1 - num2;
  }

  /// 匿名方法示例
  anonymousFunction(){
    var list = ['Tom', 'Jerry'];
    list.forEach(
        /// 下面的方法是匿名方法, 只有参数列表和方法体
        (i){
          print(list.indexOf(i));
        }
    );
  }

}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27




五、Dart 方法总结



入口方法 : 在 main.dart 中的 main() 方法 ;

void main() => runApp(MyApp());

  
 
  • 1

构造方法 : 参考 【Flutter】Dart 面向对象 ( 命名构造方法 | 工厂构造方法 | 命名工厂构造方法 ) 博客中的命名构造方法 , 工厂构造方法等 ;


getter 和 setter 方法 : 使用 get 和 set 关键字定义的方法 , 参考 【Flutter】Dart 面向对象 ( get 方法 | set 方法 | 静态方法 ) 博客 ;


静态方法 : static 关键字修饰的方法 ; 参考 【Flutter】Dart 面向对象 ( get 方法 | set 方法 | 静态方法 ) 博客 ;


抽象方法 : 没有方法体的方法 ; 参考 【Flutter】Dart 面向对象 ( 抽象类 | 抽象方法 ) 博客 ;


私有方法 : 方法名以下划线开头 ;


匿名方法 : 只有参数列表和方法体 , 没有方法名称 ;





六、 相关资源



参考资料 :


博客源码下载 :

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/114014458

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。