void main() {
print("调用系统内置方法");
//无返回值调用方法
sayHello();
print("--------------------");
//有返回值
var n = getNumber();
print(n);
print("--------------------");
var s = printInfo("张三", 24); //实参
print(s);
print("--------------------");
print(printInfos("王五"));
print("--------------------");
print(printInfos("李四", 25));
print("--------------------");
//年龄不穿默认是30岁
print(printUser("周建"));
print("--------------------");
//命名参数
print(printUsers("周建", age: 28));
print("--------------------");
//调用
method2(method1);
}
//自定义方法
void sayHello() {
print("sayHello");
}
//有返回值
int getNumber() {
var num = 4;
return num;
}
String printInfo(String username, int age) {
//形参
return "姓名是:${username},年龄是:${age}";
}
//可选参数的方法
String printInfos(String username, [int age]) {
if (age != null) {
return "姓名是:${username},年龄是:${age}";
}
return "姓名是:${username},年龄保密";
}
//定义默认参数方法
String printUser(String username, [int age = 30]) {
if (age != null) {
return "姓名是:${username},年龄是:${age}";
}
return "姓名是:${username},年龄保密";
}
//命名参数
String printUsers(String username, {int age}) {
if (age != null) {
return "姓名是:${username},年龄是:${age}";
}
return "姓名是:${username},年龄保密";
}
//方法可以当参数传递
method1() {
print("这是方法一");
}
//传入一个方法
method2(method) {
method();
}
输出:
[Running] dart "/Users/zhoujian/DartDemo/tempCodeRunnerFile.dart"
调用系统内置方法
sayHello
--------------------
4
--------------------
姓名是:张三,年龄是:24
--------------------
姓名是:王五,年龄保密
--------------------
姓名是:李四,年龄是:25
--------------------
姓名是:周建,年龄是:30
--------------------
姓名是:周建,年龄是:28
--------------------
这是方法一
[Done] exited with code=0 in 0.97 seconds