项目概览
本课属于 Coddy Swift 学习旅程的“逻辑与流程”单元。第 49 课,共 56 课。
第二个项目是一个测验引擎。状态是一个问题列表,每个问题都是一个元组:(category, text, answer)
var questions: [(String, String, String)] = [
("math", "2 + 2?", "4"),
("geo", "Capital of France?", "paris")
]接下来的 4 节课中,你会逐步添加功能:
- 添加问题并按顺序提问
- 为答案评分(不区分大小写,并去除首尾空格)
- 按类别筛选
- 总结本次运行,并按类别细分
和 Habit Tracker 一样,每节课都是独立的,你需要在每个文件顶部重新构建题库。
挑战
入门首先,编写数据初始化代码:
- 初始化一个空的题目数组(
[(String, String, String)]) - 打印数量
- 打印数组是否为空
预期输出为:
0
true亲手试试
// TODO:声明一个名为 questions 的空 [(String, String, String)],
// 然后打印 count 和 isEmpty
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: Swift 在线编辑器