【发布时间】:2014-11-04 05:12:39
【问题描述】:
我需要一个方法,它接受一个整数输入 (N) 并返回接下来 N 天的生日。我发现让任何代码运行都非常困难。下面只是我希望它如何工作的代码 - 它绝不是工作代码。非常感谢任何帮助。
/* print out all the birthdays in the next N days */
public void show( int N){
Calendar cal = Calendar.getInstance();
Date today = cal.getTime();
// birthdayList is the list containing a list
// of birthdays Format: 12/10/1964 (MM/DD/YYYY)
for(int i = 0; i<birthdayList.getSize(); i++){
if(birthdayList[i].getTime()- today.getTime()/(1000 * 60 * 60 * 24) == N)){
System.out.println(birthdayList[i]);
}
}
}
【问题讨论】:
-
第一个停靠港 - 如果可以,请放弃
java.util.Date和java.util.Calendar。您可以使用 Java 8 的java.time包或 Joda Time 吗? -
birthdayList - 它包含字符串还是日期?
-
使用 Java Instant 它有 isBefore 和 isAfter 方法来封装你的日期。
-
列表包含 Date 对象。
-
@Nikhil 如果列表包含 java.util.Date 对象,请更正您的问题。您的问题说列表对象的格式为
MM/DD/YYYY,但 j.u.Date 对象没有格式。表示 j.u.Date 值的字符串可以有这样的格式。
标签: java java.util.date java.util.calendar