Java Calendar获取时间的月和日
开始使用new Date()测试,并用通过date.getMonth(),和date.getDay()获取,不过后来发现这两个访求是jdk1.1版本的,现在已经不用了,而且结果也不正确.
Calendar rightNow = Calendar.getInstance();
int month =rightNow.MONTH;
int day = rightNow.DAY_OF_MONTH;
结果是month为2,而day为5,和现在的日期4.26没有关系
我然后用System.out.println(rightNow);,不过输出的很多内容里面的MONTH和DAY_OF_MONTH是对的
后来,在网上查找,不能这么用
应该用
int month = (date.get(Calendar.MONTH))+1;
int day = date.get(Calendar.DAY_OF_MONTH);
获取当前的月份和日期
试了一下,果然正确
后来查看java doc文档,MONTH字段解释如下
Field number for get and set indicating the month. This is a calendar-specific value. The first month of the year is JANUARY which is 0; the last depends on the number of months in a year.
这个字段的值只是说明get()的属性字段值,来获取month的
以下为获取其它:
Calendar cal = Calendar.getInstance();
//当前年
int year = cal.get(Calendar.YEAR);
//当前月
int month = (cal.get(Calendar.MONTH))+1;
//当前月的第几天:即当前日
int day_of_month = cal.get(Calendar.DAY_OF_MONTH);
//当前时:HOUR_OF_DAY-24小时制;HOUR-12小时制
int hour = cal.get(Calendar.HOUR_OF_DAY);
//当前分
int minute = cal.get(Calendar.MINUTE);
//当前秒
int second = cal.get(Calendar.SECOND);
//0-上午;1-下午
int ampm = cal.get(Calendar.AM_PM);
//当前年的第几周
int week_of_year = cal.get(Calendar.WEEK_OF_YEAR);
//当前月的第几周
int week_of_month = cal.get(Calendar.WEEK_OF_MONTH);
//当前年的第几天
int day_of_year = cal.get(Calendar.DAY_OF_YEAR);