Dart语言基础二
下面列举 dart 中的相关类型判断操作符号
操作符 | 说明 | 使用 |
---|---|---|
as | 类型转换 | (person as Person).name; |
is | 判断是否为某一类型 | person is Person ? person.name : 'leevare'; |
is! | 判断是否不是某一类型 | 与上面is 正好相反 |
关于 dart 中函数的可选参数,有两种不同的形式,一种是可选命名参数,还有一种是可选位置参数。
可选命名参数
使用{}
包裹参数。顾名思义,命名参数在传递的时候要传递其名称,所以为key: value
的形式。
void sayHello(String name, {String msg, String time}) {
print(name + ' say ' + msg + ' at ' + time);
}
sayHello('leevare', {msg: 'Hello', time: '7:00'});
// 输出:leevare say Hello at 7:00
sayHello('leevare', {msg: 'Hello'});
// 输出:leevare say Hello at
在参数上还可以添加@required
,表示必传参数。
void sayHello(String name, @required String msg) {
// ...
}
可选位置参数
使用[]
包裹的参数,表示的是可选位置参数。它的参数与参数所在位置一一对应,与命名参数不同的是,在传递参数的时候,就不用指定名称了。
void sayHello(String name, [String msg, String time]) {
print(name + ' say ' + msg + ' at ' + time);
}
sayHello('leevare', 'Hello', '7:00');
// 输出:leevare say Hello at 7:00
sayHello('leevare', 'Hello');
// 输出:leevare say Hello at
不管是命名参数还是位置参数,都可以给可选参数设置默认值,通过=
进行赋值。
void sayHello(String name, [String msg = 'Hello', String time]) {
// ...
}
void sayWorld(String name, {String msg = 'world', String time}) {
// ...
}
如果您觉得本文对您有用,欢迎捐赠或留言~
- 本博客所有文章除特别声明外,均可转载和分享,转载请注明出处!
- 本文地址:https://www.leevii.com/?p=2310