Menu
CoddyTech

项目概览

本课属于 Coddy Swift 学习旅程的“逻辑与流程”单元。第 33 课,共 56 课。

你将制作一个小型的习惯追踪器。状态存储在一个字典中,其中习惯名称对应一周内已完成的日期记录:

var habits: [String: [Int]] = [
    "read": [1, 3, 5],          // 周一、周三、周五完成
    "workout": [2, 4]           // 周二、周四完成
]

日期用整数 1...7 表示,依次对应周一到周日。在接下来的四节课中,你会逐步添加功能:

  • 添加一个习惯,并将其标记为已完成
  • 计算一周内的连续打卡天数
  • 打印每周网格
  • 比较两周

每节课都是独立的,你需要在每个文件开头重新声明字典。状态的结构相同,因此你编写的方法可以在不同课之间复用。

challenge icon

挑战

入门

要开始这个项目,请编写数据设置代码:

  1. 初始化一个空的 habits 字典([String: [Int]])
  2. 打印习惯的数量
  3. 打印字典是否为空

预期输出为:

0
true

亲手试试

// TODO:声明一个空的 [String: [Int]],然后打印 count 和 isEmpty。
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

逻辑与流程中的所有课

自己练习: Swift 在线编辑器