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基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
随机推荐
- mybatis中集成sharing-jdbc采坑
1. mybatis中集成sharing-jdbc采坑 1.1. 错误信息 Caused by: org.apache.ibatis.binding.BindingException: Invalid ...
- php+Apache2+Nginx+Mysql
Nginx 1.安装Nginx sudo apt-get clean sudo apt-get update sudo apt-get install ...
- Redis 分布式锁的正确打开方式
前言 分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁.虽然网上已经有各种介 ...
- idea 2019 集成activiti, idea activiti 新建bpmn文件, 解决idea activiti中文乱码
idea 在线安装activiti插件 1. File-->Settings 2. 点击Plugins, 右侧界面点击Marketplace后在搜索框搜索 actiBPM 注: 网络原因没有加载 ...
- 使用Qemu运行Ubuntu文件系统 —— 搭建SVE学习环境(2)
开发环境 PC:ubuntu18.04 Qemu:4.1 Kernel:Linux-5.2 概述 由于要学习ARM的SVE技术,但是目前还没有支持SVE指令的板子,所以只能用Qemu来模拟,但是发现Q ...
- Mock Server之与被测系统对接(python+flask)
第一步:获取入参与返回结果 先通过postman.jmeter.自己写脚本之类的方式请求我们的mock server,试着获取入参与对应的返回值,这里我用的是robotframework + Requ ...
- dapi 基于Django的轻量级测试平台三 接口关联
QQ群: GitHub:https://github.com/yjlch1016/dapi 一.接口关联思路: 在接口测试中, 很多场景下, 上一个接口的出参要作为下一个接口的入参, 即上一个接口的响 ...
- LCD编程_简单测试
首先,需要编写一个led_test.c的文件,依据代码框架,在led_test.c中我们能够看到的只是led.c.我们是看不到led_controller.c的.比如说,在led_test.c中,需要 ...
- @TableField
@TableField 描述:字段注解(非主键) 属性 类型 必须指定 默认值 描述 value String 否 "" 字段名 el String 否 "" ...
- No qualifying bean of type 'com.chinanums.agent.operation.service.component.OperationPageComponent' available:
java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.conte ...