我正在尝试创建一个简单的预约系统来练习TDD。我最初尝试了一个ArrayList,其中有一些代表时间的空格,然后是一个Map,两者似乎都很接近,但最终都没有奏效。 Immutibilty是关键,我用了一个构造函数来设置的能力,想有二传手依赖于字符串值的空字符串岬或nullabilty(试用过):java中简单预订系统的最佳数据类型
public class BookingSystem {
private BookingSystem bookingSystem;
private Map<Integer, String> classList;
public HashMap<Integer, String> setClassList() {
for (int i=0;i<24; i++) {
classList.put(0, "");
}
return classList;
}
public void bookClassroom(int time, String room) throws BookedException {
if (classList.get(time).equals("")) {
classList.put(time, room);
} else {
throw new BookedException();
}
}
这似乎像黑客,但对我来说似乎也是合乎逻辑的。是一个HashMap矫枉过正,并会简单的列表或数组足够?我已经尝试过所有这些,但没有完全实现它,现在我觉得现在我已经陷入了许多Java数据结构中。
下一步就是让教室成为自己的班级和一个枚举,但首先我必须弄清楚基础知识!
- 编辑:插在防火墙后面,不允许我评论他人的帖子。数组/列表/地图的每个索引应该足够“一小时”。该名单将长8或24个指数(没关系,因此表现不成问题)。
太多的辩论,人...我相信会有一个不同的和独特的设计,为eqch我们之一的应用创意... – eduyayo