我正在进行一项任务,我必须创建Event类,然后将随机事件放在Event类型(数组对象)的数组中。我能够解决这个问题,但现在我必须像下面一样显示整个月份。因此,如果一天中有任何事件,则会在其旁边打印一个星号。这不是GUI分配。这只是一个简单的任务。作业问我:
日历视图,在顶部横向列出一周中的星期几(星期日到星期六),以及下方的月份日期。在有预定活动的每一天旁边,打印星号“*”。就像在真实日历中一样,该月的第一天可以是任何工作日。
Sun Mon Tue Wed Thu Fri Sat
1 2* 3 4 5 6
7 8 9 10 11* 12* 13
14* 15* 16* 17 18 19* 20
21 22 23 24 25* 26* 27
28* 29 30
任何人都可以给我一些关于如何进行的提示吗?我只是需要一些关于如何开始编写日历视图的想法。现在,我对我的一无所知。任何能让我失望的事情都会受到赞赏。如果有人想查看我的Event类代码,请点击此处。
class Event{
/*** Instance variables ***/
private String timeofEvent;
private String nameofEvent;
private int priority;
/*** Constructor***/
public Event(String timeofEvent, String nameOfEvent, int priority) {
this.timeofEvent = timeofEvent;
this.nameofEvent = nameofEvent;
this.priority = priority;
}
/*** Instance methods ***/
public String nameEvent(){
return nameofEvent;
}
public String timeEvent(){
return timeofEvent;
}
public int priorityEvent(){
return priority;
}
public String toString() {
return timeofEvent + ":" + nameofEvent + "(" + priority + ")";
}
}
如果有人需要更多解释,我很乐意解释这个问题。有更多的代码,但我只是不想粘贴整个事情,因为有人可能会剽窃它。 我们不允许使用日历类。
答案 0 :(得分:0)
我有个主意。如果您没有使用GUI,也许您可以将日历打印到终端。如果你愿意这样做,我会让2D数组中的每一列都有5个空格。这样,对于日历的顶部,你可以让字符串看起来像"太阳""周一" ...没有引号。如果它们之间没有空格,它就会混杂在一起。然后,在适当位置插入数组的数字也需要总共等于5个空格。如:" 1"" 2"或" 29"" 30"或" 29 *"" 30 *"。如果你用所有正确的字符串填充数组(不要忘记星号),那么只需在最后打印出来。要填充数组,您需要一个for循环,可以确定何时打印第1天(如果它在星期一或星期二等等)和何时停止(因为几个月有不同的天数) 。一些整数和布尔应该可以做到这一点。