【发布时间】:2023-03-06 10:49:01
【问题描述】:
我正在尝试这样做。我有一个工作日的enum。我一直使用enum,因为工作日是固定的
public enum WeekDay {
MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY;
}
我有一门课,叫做Session。会话只是在特定时间发生的事情,例如数学课
public class Session {
// some fields
public String title;
public int duration,start,end;
/** several methods follow to get and set, and check e.t.c **/
}
还有第三类,称为Venue。举办会议的场地,例如数学课可以从上午 9 点到 10 点,在一个叫做“数学课”的场地(一个例子)
public class Venue { // simply a place that can hold several sessions in a day
private String name;
private int capacity;
/** several methods**/
}
我需要做的是 - 在枚举中创建一个会话列表,即每天都有它的会话,然后我需要将枚举保存在一个场所内的结构(ArrayList 或枚举集?)中,即一个场所周一至周五有课程(最好是学校课程)。所以它会是这样的:
public enum WeekDay {
MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY;
/** the list of sessions for a given day**/
private ArrayList <Session> list;
private int numOfSessions; // number of sessions
/** with some methods like **/
addSession();
removeSession();
getSession();
checkTimeOfSession();
...
}
所以在会场,我们可以有:
public class Venue {
private String name;
private int capacity;
private ? <WeekDay> list; //structure to hold days, i don't know which one to use yet
/** several methods like **/
numOfSessionsOn();
getSessionsOn();
addSessionOn();
removeSessionOn();
...
}
这是我的问题:
- 我可以将
Session类嵌套在enum中吗? -
enum可以接受arraylists吗? - 在场地内举行会议的最佳结构是什么?
- 对此有更好的想法吗?
有人刚刚告诉我,我将在同一天通过所有场地,例如星期一是所有场地的星期一,其列表将由每个场地更新。所以我认为这就是讨论的结束,即使没有人发表评论。
【问题讨论】:
-
是的。对所有人。除了 4,因为会话是不同的实体。周一可以有两节物理课,下周一会有两节完全不同的另一门课,所以使用这种结构是不明智的。
-
你的问题解决了吗?