Dart方法基础知识
方法定义:


void main(List args){
print(args);
print(getPerson('wwk', 32));
}
/*String getPerson(String name,int age){
return 'name = $name,age = $age';
}*/
//返回值的类型 参数的类型都可以省略
/*getPerson(name,age){
return 'name = $name,age = $age';
}*/
//箭头语法
getPerson(name,age)=>'name = $name,age = $age';
打印结果:
[]
name = wwk,age = 32
可选参数:

void main(){
printPerson('张三');
printPerson('张三',age: 18);
printPerson('张三',age: 18,gender: 'Male');
print('--------------');
printPerson2('李四');
printPerson2('李四', 30);
printPerson2('李四', 30, 'Female');
}
void printPerson(String name,{int age,String gender}){
print('name=$name,age=$age,gender=$gender');
}
void printPerson2( name,[int age,String gender]){
print('name=$name,age=$age,gender=$gender');
}
打印结果:
name=张三,age=null,gender=null
name=张三,age=18,gender=null
name=张三,age=18,gender=Male
--------------
name=李四,age=null,gender=null
name=李四,age=30,gender=null
name=李四,age=30,gender=Female
另外,正常参数必须在可选参数之前。
默认参数:

void main(){
printPerson('张三');
printPerson('张三',age: 18);
printPerson('张三',age: 18,gender: 'Male');
}
void printPerson(String name,{int age = 30,String gender = 'Female'}){
print('name=$name,age=$age,gender=$gender');
}
打印结果:
name=张三,age=30,gender=Female
name=张三,age=18,gender=Female
name=张三,age=18,gender=Male
方法对象:

void main(){
// var fun = printHello;
//方法可以作为个对象传递给其他变量
Function fun = printHello;
fun();
//方法可以作为参数传递给其他方法
var list = [1,2,3,4];
list.forEach(print);
}
void printHello(){
print('Hello');
}
打印结果:
Hello
1
2
3
4
匿名方法:


闭包:

Dart方法基础知识的更多相关文章
- Anliven - 基础知识梳理汇总 - 软件测试
基础知识梳理 - 软件测试 - 概念 基础知识梳理 - 软件测试 - 分类 基础知识梳理 - 软件测试 - 流程 基础知识梳理 - 软件测试 - 用例 基础知识梳理 - 软件测试 - 方法 基础知识梳 ...
- js基础知识温习:Javascript中如何模拟私有方法
本文涉及的主题虽然很基础,在很多人眼里属于小伎俩,但在JavaScript基础知识中属于一个综合性的话题.这里会涉及到对象属性的封装.原型.构造函数.闭包以及立即执行表达式等知识. 公有方法 公有方法 ...
- java基础知识回顾之---java String final类普通方法
辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /* * 按照面向对象的思想对字符串进行功能分类. * ...
- C#基础知识学习(1)方法的重写和隐藏
做了1年多了C#,发现些项目过程中很多基础东西都不是很清晰,基础不够牢固.现在开始复习基础知识并做重点记录 方法需要被重写的时候,可以在方法前加入virtual使方法变成虚方法. 这样我们可以重新写个 ...
- Python入门方法推荐,哪些基础知识必学?
很多想入门的小伙伴还不知道Python应该怎么学,哪些知识必学,今天我们就来盘点一下. 01.入门方法推荐 总体来讲,找一本靠谱的书,由浅入深,边看边练. 网上的学习教程有很多,多到不知道如何选择.所 ...
- 数据结构和算法(Golang实现)(10)基础知识-算法复杂度主方法
算法复杂度主方法 有时候,我们要评估一个算法的复杂度,但是算法被分散为几个递归的子问题,这样评估起来很难,有一个数学公式可以很快地评估出来. 一.复杂度主方法 主方法,也可以叫主定理.对于那些用分治法 ...
- Flutter调研(1)-Flutter基础知识
工作需要,因客户端有部分页面要使用flutter编写,需要QA了解一下flutter相关知识,因此,做了flutter调研,包含安装,基础知识与demo编写,第二部分是安装与环境配置. —— Flut ...
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
随机推荐
- html书写行内元素时-tab和换行会在行内元素间引入间距
目录 html文本中的控制字符会被解析为文本节点 书写行内元素时,换行符LF与水平制表符HT会引入莫名的元素间间隔 其他控制字符是否会引入间距的验证 html文本中的控制字符会被解析为文本节点 举例: ...
- flink Reduce、GroupReduce、GroupCombine笔记
1.reduce操作,在分组的dataset上使用,也可以在不分组的dataset上使用 应用于分组DataSet的Reduce转换使用用户定义的reduce函数将每个组减少为单个元素.对于每组输入元 ...
- 【剑指 offer】数组中重复的数字 -- PHP 实现
题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任意一个重复的数字. 例如,如果输入长度为 ...
- 华为企业级AS111-S,比较垃圾的地方
今天换了一个华为企业级AS111-S 路由器,比较垃圾的地方: 1. 网页管理界面是https,却用一个无效的证书,chrome直接不能访问,IE可以访问,但第一次登陆改密码的时候就出错了. 然后怎么 ...
- Oracle分析函数FIRST_VALUE、LAST_VALUE
FIRST_VALUE.LAST_VALUE分析函数可以按照特定分组和排序取出组内首尾值,语法 FIRST_VALUE { (expr) [ {RESPECT | IGNORE} NULLS ] | ...
- C# Net 计算周(可正推和逆推)
C# Net 计算周(可正推和逆推) 拷贝代码(方法): /// <summary> /// 计算周 /// </summary> /// <param name=&qu ...
- 机器学习之KMeans聚类
零.学习生成测试数据 from sklearn.datasets import make_blobs from matplotlib import pyplot # create test data ...
- Nacos 学习资料
资料 网址 官方网站 https://nacos.io/zh-cn/docs/what-is-nacos.html github https://github.com/alibaba/nacos 程序 ...
- django ORM创建
简短的例子 from django.db import models class Person(models.Model): first_name = models.CharField(max_len ...
- selenium--等待的三种方式
前戏 在我们做UI自动化的时候,最不稳定的就是页面了,由于各种原因页面的元素没有加载出来,比如网速慢,服务器响应慢等等,这时候如果我们去操作页面的元素,selenium会给我们抛出一个NoSuchEl ...