Dart 函数

文章目录

  • Dart 函数
    • 概述
    • 普通函数
    • 可选参数
      • 命名可选参数
      • 位置可选参数
    • 匿名函数
    • 箭头函数
    • 函数类型

Dart 函数

概述

Dart是一种面向对象语言,函数也是对象,其类型是Function。Dart中定义函数基本与Java相同,但多了一些高级特性。

普通函数

int add(int a, int b) {return a + b;
}

在dart中返回值可以省略:

add(int a, int b) {return a + b;
}

可选参数

命名可选参数

可以使用required表示参数是必填的。

void main(List args) {printInfo("小明"); //name:小明 age:0 address: sex:falseprintInfo("小白",age: 10,address: "beijing",sex: true); //name:小白 age:10 address:beijing sex:true
}void printInfo(String name,{int age = 0, String address = "", bool sex = false}) {print("name:$name age:$age address:$address sex:$sex");
}

位置可选参数

void main(List args) {printInfo("小明"); //name:小明 age:0 address: sex:falseprintInfo("小白", 20, "shanghai", true); //name:小白 age:20 address:shanghai sex:true
}void printInfo(String name,[int age = 0, String address = "", bool sex = false]) {print("name:$name age:$age address:$address sex:$sex");
}

匿名函数

正常情况下创建的函数都是有函数名的,匿名函数是指没有函数名、保留函数参数列表和函数体的函数。

var fun = (int a, int b) {return a + b;
};//使用:
fun(2, 3);

箭头函数

int add(int a, int b) => a + b;

匿名函数和箭头函数组合:

var fun = (int a, int b) => a + b;

函数类型

在很多语言里,如Java/OC都不支持函数类型,但在Dart中,可以使用函数类型,将函数赋值给一个变量来使用。

void main(List args) {var fun1 = myFunction;fun1("hello"); //hellotest("world", myFunction); //world
}void myFunction(String desc) {print(desc);
}void test(String desc, Function fun) {fun(desc);
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部