在dart中,如何定义一个函数呢?
void functionA(int a = 10, @required String b) {
}
- void表示没有返回值,返回值可以是dart支持的任何数据类型
- functionA是函数的名称
- int a是函数的第一个参数,它是可选参数
- @required String b是函数的第二个参数,它是必传参数
- int a = 10表示10是参数a的默认值
函数还可以作为变量。
var a = (b) {
print(b);
}
a('Hello Dart');
函数还可以作为另一个函数的参数,比如用在foreach函数。
final list = [1, 2, 3];
list.forEach((element) {
print(element);
});
如果函数只有一行语句的话,也可以这样写,这种语法在groovy语言中也叫作闭包函数,在kotlin中也叫作高阶函数,可想而知,dart已然是非常强大。
final list = [1, 2, 3];
list.forEach((element) => print(element));
我们再来看看异常的捕获,写法如下:
try {
} on Exception catch(e) {
} finally {
}