JSRUN 用代码说话

默认参数值

编辑教程

默认参数值

默认值只能是编译时常量 。在定义方法的时候,可以用 = 来定义可选参数的默认值。 如果没有提供默认值,那么默认值为 null。

下面是设置可选参数默认值示例:

/// 设置 [bold] 和 [hidden] 标志 ...
void enableFlags({bool bold = false, bool hidden = false}) {...}

// bold 值为 true; hidden 值为 false.
enableFlags(bold: true);

不推荐:旧版本代码中起初命名参数只支持 冒号(:) , 不是 = 来设置参数默认值。 但是这种支持可能会被弃用。所以这边建议用 = 指定默认值。

下边示例演示了怎样为位置参数设置默认值:


String say(String from, String msg,
    [String device = 'carrier pigeon', String mood]) {
  var result = '$from says $msg';
  if (device != null) {
    result = '$result with a $device';
  }
  if (mood != null) {
    result = '$result (in a $mood mood)';
  }
  return result;
}

assert(say('Bob', 'Howdy') ==
    'Bob says Howdy with a carrier pigeon');

l 下面的示例定义了一个方法 doStuff(), 且分别指定参数 list 和 gifts 的默认值。ist 或 map 可以作为默认值传递。


void doStuff(
    {List<int> list = const [1, 2, 3],
    Map<String, String> gifts = const {
      'first': 'paper',
      'second': 'cotton',
      'third': 'leather'
    }}) {
  print('list:  $list');
  print('gifts: $gifts');
}
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
金额: 0
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟