一、方法的定义变量和作用域
内置方法:
如,print();
自定义方法定义的格式
返回类型 方法名称(参数1,参数2,…){
方法体
return 返回值;
}
注意:当该方法没有返回值时,可以不写
newFriend(String friend,int age){ //无返回值
print("i have a friend his name is $friend and he is $age");
}
二、方法传参,默认参数、可选参数、命名参数
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;
}
main(){
var n1=sumNum(5);
print(n1);
var n2=sumNum(60);
print(n2);
}
2.定义一个带可选参数的方法 ,最新的dart定义可选参数需要指定类型默认值
String printUserInfo(String username,[int age=0]){ //行参
if(age!=0){
return "姓名:$username---年龄:$age";
}
return "姓名:$username---年龄保密";
}
main(){
print(printUserInfo('张三',21)); //实参
print(printUserInfo('张三'));
}
3.定义一个带默认参数的方法
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));
4.定义一个命名参数的方法,最新的dart定义命名参数需要指定类型默认值
//例1
newFriend2({fName:"anonymous",fAge:30}){
print("i have a friend his name is $fName and he is $fAge");
}
newFriend2(fName: "zhangsan",fAge: 25);
//例2
String printUserInfo(String username, {int age = 0, String sex = '男'}) {//行参
if (age != 0) {
return "姓名:$username---性别:$sex--年龄:$age";
}
return "姓名:$username---性别:$sex--年龄保密";
}
print(printUserInfo('张三', age: 20, sex: '未知'));
三、箭头函数
例1 使用forEach打印下面List里面的数据*/
List list=['苹果','香蕉','西瓜'];
list.forEach((value){
print(value);
}