项目概览
本课属于 Coddy Swift 学习旅程的“逻辑与流程”单元。第 33 课,共 56 课。
你将制作一个小型的习惯追踪器。状态存储在一个字典中,其中习惯名称对应一周内已完成的日期记录:
var habits: [String: [Int]] = [
"read": [1, 3, 5], // 周一、周三、周五完成
"workout": [2, 4] // 周二、周四完成
]日期用整数 1...7 表示,依次对应周一到周日。在接下来的四节课中,你会逐步添加功能:
- 添加一个习惯,并将其标记为已完成
- 计算一周内的连续打卡天数
- 打印每周网格
- 比较两周
每节课都是独立的,你需要在每个文件开头重新声明字典。状态的结构相同,因此你编写的方法可以在不同课之间复用。
挑战
入门要开始这个项目,请编写数据设置代码:
- 初始化一个空的
habits字典([String: [Int]]) - 打印习惯的数量
- 打印字典是否为空
预期输出为:
0
true亲手试试
// TODO:声明一个空的 [String: [Int]],然后打印 count 和 isEmpty。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: Swift 在线编辑器