Menu
CoddyTech

函数参数回顾

本课属于 Coddy Dart 学习旅程的“基础知识”单元。第 76 课,共 94 课。

challenge icon

挑战

简单

创建一个 TravelPlanner 函数,帮助用户规划行程。该函数应:

  • 接收一个必需的命名参数 destination(String)
  • 接收一个必需的命名参数 durationInDays(int)
  • 接收一个可选的命名参数 budget,默认值为 1000
  • 接收一个可选的命名参数 travelers,默认值为 1
  • 接收一个可选的命名参数 includeInsurance,默认值为 false

该函数应返回一个格式化字符串,其中包含行程详情,格式必须完全如下:

Trip to [destination] planned:
- Duration: [durationInDays] days
- Travelers: [travelers]
- Budget per person: $[calculated budget]
- Insurance: [Yes/No]

计算出的预算应为总预算除以旅行人数,并四舍五入到最接近的整数。

亲手试试

// 完成下面的 TravelPlanner 函数
String TravelPlanner({
  // TODO:为 destination 和 durationInDays 添加必填的命名参数
  // TODO:为 budget 添加默认值为 1000 的可选命名参数
  // TODO:为 travelers 添加默认值为 1 的可选命名参数
  // TODO:为 includeInsurance 添加默认值为 false 的可选命名参数
}) {
  // TODO:用 budget 除以 travelers,计算每人的预算
  // 提示:使用 .round() 得到整数
  
  // TODO:使用多行字符串返回格式化的行程详情
  // 提示:使用三引号 ''' 或 """ 编写多行字符串
  // 输出应包含:
  // - 目的地
  // - 行程天数
  // - 出行人数
  // - 每人预算(带 $ 符号)
  // - 保险(Yes/No)
  
}

void main() {
  // 只用必需参数进行测试
  print(TravelPlanner(destination: 'Paris', durationInDays: 7));
  
  // 用所有参数进行测试
  print(TravelPlanner(
    destination: 'Tokyo',
    durationInDays: 10,
    budget: 5000,
    travelers: 3,
    includeInsurance: true,
  ));
}

基础知识中的所有课

自己练习: Dart 在线编译器