/*内置方法/函数: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'];
}void main(){// print('调用系统内置的方法');// printInfo();// var n=getNum();// print(n);// print(printUserInfo());// print(getList());// print(getList());//演示方法的作用域void xxx(){aaa(){print(getList());print('aaa');}aaa();}// aaa();  错误写法 xxx();  //调用方法}
//调用方法传参main() {
//1、定义一个方法 求1到这个数的所有数的和      60    1+2+3+。。。+60/*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、定义一个带可选参数的方法 ,最新的dart定义可选参数需要指定类型默认值// String printUserInfo(String username,[int age=0]){  //行参//   if(age!=0){//     return "姓名:$username---年龄:$age";//   }//   return "姓名:$username---年龄保密";// }// print(printUserInfo('张三',21)); //实参// print(printUserInfo('张三'));//4、定义一个带默认参数的方法// String printUserInfo(String username,[String sex='男',int age=0]){  //行参//   if(age!=0){//     return "姓名:$username---性别:$sex--年龄:$age";//   }//   return "姓名:$username---性别:$sex--年龄保密";// }// print(printUserInfo('张三'));// print(printUserInfo('小李','女'));// print(printUserInfo('小李','女',30));//5、定义一个命名参数的方法,最新的dart定义命名参数需要指定类型默认值// String printUserInfo(String username, {int age = 0, String sex = '男'}) {//行参    //   if (age != 0) {//     return "姓名:$username---性别:$sex--年龄:$age";//   }//   return "姓名:$username---性别:$sex--年龄保密";// }// print(printUserInfo('张三', age: 20, sex: '未知'));//6、实现一个 把方法当做参数的方法// var fn=(){//   print('我是一个匿名方法');// };// fn();//方法fn1() {print('fn1');}//方法fn2(fn) {fn();}//调用fn2这个方法 把fn1这个方法当做参数传入fn2(fn1);
}
void main() {
/*需求:使用forEach打印下面List里面的数据*/// List list=['苹果','香蕉','西瓜'];// list.forEach((value){//   print(value);// });// list.forEach((value)=>print(value));//注意和方法的区别: 箭头函数内只能写一条语句,并且语句后面没有分号(;)// list.forEach((value)=>{//   print(value)// });/*需求:修改下面List里面的数据,让数组中大于2的值乘以2*/// List list=[4,1,2,3,4];// var newList=list.map((value){//     if(value>2){//       return value*2;//     }//     return value;// });// print(newList.toList());//  var newList=list.map((value)=>value>2?value*2:value);//  print(newList.toList());/*
需求:    1、定义一个方法isEvenNumber来判断一个数是否是偶数  2、定义一个方法打印1-n以内的所有偶数
*/// 1、定义一个方法isEvenNumber来判断一个数是否是偶数  bool isEvenNumber(int n) {if (n % 2 == 0) {return true;}return false;}
//  2、定义一个方法打印1-n以内的所有偶数printNum(int n) {for (var i = 1; i <= n; i++) {if (isEvenNumber(i)) {print(i);}}}printNum(10);
}
int getNum(int n) {return n;
}void main() {// print(getNum(12));//匿名方法// var printNum=(){//   print(123);// };// printNum();// var printNum=(int n){//   print(n+2);// };// printNum(12);//自执行方法// ((int n){//   print(n);//   print('我是自执行方法');// })(12);//方法的递归// var sum = 1;// fn(int n) {//   sum *= n;//   if (n == 1) {//     return;//   }//   fn(n - 1);// }// fn(5);// print(sum);//通过方法的递归 求1-100的和var sum=0;fn(int n){sum+=n;if(n==0){return;}fn(n-1);}fn(100);print(sum);
}
/*
闭包:1、全局变量特点:    全局变量常驻内存、全局变量污染全局2、局部变量的特点:  不常驻内存会被垃圾机制回收、不会污染全局  /*  想实现的功能:1.常驻内存        2.不污染全局   产生了闭包,闭包可以解决这个问题.....  闭包: 函数嵌套函数, 内部函数会调用外部函数的变量或参数, 变量或参数不会被系统回收(不会释放内存)闭包的写法: 函数嵌套函数,并return 里面的函数,这样就形成了闭包。*/
*//*全局变量*/
var a = 123;void main() {// print(a);// fn(){//   a++;//   print(a);// }// fn();// fn();// fn();//局部变量// printInfo() {//   var myNum = 123;//   myNum++;//   print(myNum);// }// printInfo();// printInfo();// printInfo();//闭包fn() {var a = 123; /*不会污染全局   常驻内存*/return () {a++;print(a);};}var b = fn();b();b();b();
}

闲来没事学Dart(七)函数相关推荐

  1. 从头开始学JavaScript (七)——函数

    一.return 函数在执行完return之后停止并立即退出. return返回值:与return: 如下两个例子: 1 function sum(num1, num2) { 2 num1= num1 ...

  2. python接收弹幕_闲着没事,尝试一下用Python爬取B站弹幕呀~

    原标题:闲着没事,尝试一下用Python爬取B站弹幕呀~ 前言 最近同学要做东西,需要用 B 站的视频对应的弹幕数据做分析,于是请我帮忙爬取 B 站视频的弹幕数据. 对于爬虫而言,我们需要找到对应数据 ...

  3. c语言实验七 函数实验报告,C语言实验七函数实验报告.doc

    C语言实验七函数实验报告 C语言程序设计 实 验 报 告 实验题目 实验七 函数 实验目的 掌握函数定义的方法: 掌握函数实参与形参的对应关系,以及值传递的方式. 掌握函数的嵌套调用和递归调用的方法: ...

  4. Linux就应该这么学第七课-文件的特殊权限

    Linux就应该这么学第七课 文件的特殊权限 1.SUID 将文件执行者临时获取所有者的权限 u+s 2.SGID 让执行者临时拥有属组的权限 g+s 在某个目录中创建的文件自动继承该目录的用户组(只 ...

  5. Dart入门—函数与运算符

    Dart入门-函数与运算符 函数 基本语法 void main(){printNameA("XiaoMing");printNameB("XiaoMing"); ...

  6. python必备基础代码-新手上路必学的Python函数基础知识,全在这里了(多段代码举例)...

    原标题:新手上路必学的Python函数基础知识,全在这里了(多段代码举例) 导读:函数是Python中最重要.最基础的代码组织和代码复用方式.根据经验,如果你需要多次重复相同或类似的代码,就非常值得写 ...

  7. 闲着没事。 给一女同事发信息:开好了房间,等你! 她回:别开玩笑了。 我回回:真的,都说你技术好,我想试试真假。 她回:再这样我就生气了。 我回:真的,我不骗你。 我回:他们都发誓了,说你技术真的很

    闲着没事. 给一女同事发信息:开好了房间,等你! 她回:别开玩笑了.  我回回:真的,都说你技术好,我想试试真假. 她回:再这样我就生气了. 我回:真的,我不骗你. 我回:他们都发誓了,说你技术真的很 ...

  8. 一木.溪桥学Python-10:函数闭包、装饰器、推导式

    一木.溪桥 在Logic Education跟Amy学Python 逻辑教育 :https://logicedu.ke.qq.com 12期:Python基础课 一木.溪桥学Python-10:函数闭 ...

  9. 一木.溪桥学Python-09:函数的返回值、函数的作用域、作用域的优先级、递归函数、内置文件中常用方法、匿名函数lambda、高阶函数

    一木.溪桥 在Logic Education跟Amy学Python 12期:Python基础课 一木.溪桥学Python-09:函数的返回值.作用域.作用域的优先级.递归函数.内置文件中常用方法.匿名 ...

最新文章

  1. JDBC-day01
  2. python 慕课课程笔记(一)
  3. 美国大学生数学建模竞赛15大热点问题
  4. 设置Web页面试用手机浏览器(iphone)
  5. java必知必会_Java必知必会--spring解析基础篇
  6. apache ignite_使用Spring Data的Apache Ignite
  7. python获取本地时间并向服务器发送udp报文_python3通过udp实现组播数据的发送和接收操作...
  8. 2019pro与air怎么选_MacBookAir 2020和MacBookPro 2019该选谁?超详细对比告诉你
  9. oracle优化查询前几条,一个查询优化的分析调整全过程!很值得一看
  10. 编译自己功能定制的Fedora7内核
  11. 华为鸿蒙系统支持什么手机_华为鸿蒙系统支持的手机型号大全,鸿蒙系统2.0支持手机型号汇总[图]...
  12. AUTOCAD——图案填充命令
  13. 基于Java+SpringMvc+vue+element实现博物馆平台系统
  14. conky - linux desktop 漂亮的桌面系统资源使用监控软件
  15. Mac-homebrew使用(Mac下包管理工具)
  16. windows桌面小工具(Tkinter)
  17. mysql-8.0.28-winx64安装步骤
  18. 《SysML精粹》学习记录--第四章
  19. matlab打开F90文件,ifort编译f90程序命令
  20. 【PHP】配置环境变量,查看php版本(保姆级图文)

热门文章

  1. 新辰:浅谈那些被挑毛病的90后创业者 到底谁错了?
  2. VC欣赏、家人是阻力,极客化、国际化——90后创业生态
  3. Python实现自动批改作业系统~
  4. 常规正则表达式练习,一起来开心的掉发吧
  5. 1.8 信息系统服务管理
  6. css背景设置,让套图中某张图片居中显示的例子
  7. 为什么lol计算机内存不足怎么办,win7玩LOL英雄联盟提示“内存不足”怎么处理?(图文)...
  8. 代码开源!阿里妈妈展示广告Match底层技术架构最新进展
  9. 关于如何用eclipse上班看小说
  10. instagram分析以预测与安的限量版运动鞋转售价格