说明
已知学生的姓名以及他们所在的年级,请为这所学校建立一份名册。
最终,你应该能够:
- 把学生的姓名添加到某个年级的名册中
- 获取某个年级里所有已注册学生的列表
- “2 年级有哪些学生?”
- “目前只有 Jim 一个人。”
- 获取所有年级全部学生的排序列表。年级应按 1、2、3 等的顺序排列,同一
年级内的学生则按姓名的字母顺序排列。
- “现在学校里都有谁?”
- “让我想想。1 年级有
Anna、Barb 和 Charlie,
2 年级有 Alex、Peter 和 Zoe,
5 年级有 Jim。
所以答案是:Anna、Barb、Charlie、Alex、Peter、Zoe 和 Jim”
注意,我们所有的学生都只有一个名字。(这是个小地方,你还想怎样?)
加分项
你的测试都通过了吗?代码够整洁吗?如果愿意,还可以尝试下面这些额外的挑战:
- 如果你使用的语言有可变数据结构,而你的实现又允许外部代码直接修改学校内部的
数据库,看看能否阻止这种情况。欢迎自行添加更多测试。
然后请在提交的解答下留言,分享你的想法。这个实验让代码变得更好了吗?更糟了
吗?你从中有什么收获吗?
来源
与 Phil Battos 在 gSchool 的一次结对编程