调用方法传参
定义一个方法 求1到这个数的所有的和
main() {
int sumNum(int n) {
var sum = 0;
for (var i = 0; i <= n; i++) {
sum += i;
}
return sum;
}
var n1 = sumNum(60);
print(n1);
var n2 = sumNum(100);
print(n2);
}
定义一个方法然后打印用户信息
main() {
String printUserInfo(String username, int age) {
return ("姓名:$username ------ 年龄:$age");
}
print(printUserInfo("张三", 20));
}
定义一个带可选参数的方法
main() {
String printUserInfo(String username, [int age = null, String sex = '男']) {
// 形参
if (age != null) {
return "姓名:$username ------ 年龄:$age";
}
return "姓名:$username ------ 年龄:保密";
}
print(printUserInfo("张三", 21)); // 实参
print(printUserInfo("张三")); // 姓名:张三 ------ 年龄:保密
}
定一个带默认参数的方法
main() {
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)); // 姓名:小李 --- 性别: 女 --- 年龄:30
}
定义一个命名参数
main() {
String printUserInfo(String username, {int age = 0, String sex = '男'}) {
if (age != 0) {
return "姓名:$username---性别:$sex--年龄:$age";
}
return "姓名:$username---性别:$sex--年龄保密";
}
print(printUserInfo('张三', age: 20, sex: '未知')); // 姓名:张三---性别:未知--年龄:20
}
实现一个 把方法当做参数的方法
main() {
// 方法
fn1() {
print('fn1');
}
// 方法
fn2(fn) {
fn();
}
// 调用 fn2 这个方法 把fn1这个方法当参数传入
fn2(fn1); // fn1
}