可选参数
//调用时 { }的参数可传可不传,可按参数名判别传的参数
learn(String a,{int b,String c}){
}
// 调用时[ ]的参数可传可不传,按位置判别参数
learn(String a,[int a,String c]){
}
Dart可选参数
可选参数图
可选参数必须为参数列表的最后一个
[]基于变量位置的可选参数的定义
{}基于变量名的可选参数的使用
{}基于变量名的可选参数的定义
{参数1,参数2,…}基于命名的参数 可以根据参数的名称来传递参数
[参数1,参数2,…]基于位置的参数 可以根据参数的位置来传递参数
如果存在具体参数,可选参数声明必须在参数后面
基于名称和位置的可选参数
可选参数
必传参数必须在可选参数前面
person4("小小");
person4("小小",age:1,str:"nice");
person5("小小");
person5("小小",1,"nice");
}
person4(String name,{int age,String str}){
print("name=$name,age=$age,str=$str");
}
person5(String name,[int age,String str]) {
print("name=$name,age=$age,str=$str");
}
可选参数笔记
可选参数有两种{ }和[ ] 前一种可以不按顺序选择,但是要写上参数名称,[]不需要,但是要按顺序选择参数,前一个没有传则后面的参数也无法传入。
可选参数:
可选参数。
基于位置的可选参数[]
可选参数{}
一,可选参数
可选命名参数{param1,param2,....}
可选位置参数[parm1,param2]
方法中的可选参数
(1)使用 { } 包裹的,如printPerson, 调用的时候不需要加上属性名称
(2)使用[ ] 包裹的, 如printPerson2, 调用的时候按照顺序传值就好
大括号按参数名
中括号按位置

1、{参数1,参数2,…}基于命名的参数 可以根据参数的名称来传递参数的
方法:
print 1(String name,{int age,String gender}){}
调用:
print1(“李四”);
print1(“李四”,age:18,gender:”Male”);
print1(“李四”,gender:”Male”);
2、[参数1,参数2,…]基于位置的参数 可以根据参数的位置来传递参数的
方法:
print 2(String name,[int age,String gender]){}
调用:
Print2(“李四”);
print2(“李四”, 18);
print2(“李四”, 18,”Male”);
3、如果存在具体参数,可选参数声明必须在参数后面。
{参数1,参数2,}基于命名的参数 可以根据参数的名称来传递参数的

可选参数必须在一般参数的后面

可选参数使用【】表示里面的可选参数是基于位置来的 再调用的时候不需要先写参数的key,直接写值就行了。这和 { }所声明的有所区别
可选参数的调用方式

方法中的可选参数

可 选参数
方法可选参数
可选参数 基于命名、基于位置