Mar*_*sen 9 java calendar date
我想弄清楚如何让我的程序计算一周内的星期日数.
我尝试过以下的事情:
if (date.DAY_OF_WEEK == date.SUNDAY) {
System.out.println("Sunday!");
}
Run Code Online (Sandbox Code Playgroud)
但它似乎不起作用?
当我试着System.out.Println the date.DAY_OF_WEEK得到:7
有谁知道我如何检查当前日历日期是否是星期日?
更新更多信息
所有日期的日期.DAY_OF_WEEK是一个Calendar对象!
我确保将Calendar对象date设置为星期日
系统输出打印我获得7是当我尝试运行时它返回给我,date.DAY_OF_MONTH即使它设置为星期日的那天
第二次更新到亚历克斯
这或多或少是我的代码
Calendar startDate = Calendar.getInstance();
startDate.set(2012, 12, 02);
if (startDate.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) {
System.out.println("true");
}else {
System.out.println("FALSE");
}
Run Code Online (Sandbox Code Playgroud)
Ale*_*lex 25
Calendar cal = ...;
if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) {
System.out.println("Sunday!");
}
Run Code Online (Sandbox Code Playgroud)
Calendar.DAY_OF_WEEK始终等于7无论Calendar您使用的是什么实例(请参阅此链接),它都是一个常量,用于与Calendar.get()方法一起使用以检索正确的值.
它的召唤Calendar.get(Calendar.DAY_OF_WEEK)将返回一周的真实日子.此外,您将在Calendar类Calendar.SUNDAY(以及其他日期和月份)中找到有用的值,以便您在代码中更明确,并避免错误JANUARY等于0.
编辑
就像我说的,Calendar该类确实包含有用的常量供您使用.12它们没有开始的月份编号0(见上文),Java日期处理中的DECEMBER月份编号11也是如此.
Calendar startDate = Calendar.getInstance();
startDate.set(2012, Calendar.DECEMBER, 02);
if (startDate.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) {
System.out.println("true");
} else {
System.out.println("FALSE");
}
Run Code Online (Sandbox Code Playgroud)
true当然会印刷.