参考:Java中Calendar基本使用
| 日历字段 |
Value |
备注 |
| YEAR |
当前年份 |
|
| MONTH |
当前月份 |
初始值是从0开始,所以得到的比实际月份小1月 |
| DATE |
一个月中的某天 |
|
| WEEK_OF_YEAR |
当前年中的第几个星期 |
|
| WEEK_OF_MONTH |
当前月中的第几个星期 |
|
| DAY_OF_MONTH |
一个月中的第几天 |
|
| DAY_OF_YEAR |
一年中的第几天 |
|
| DAY_OF_WEEK |
一个星期中的第几天 |
周日=1,周6=7 |
| DAY_OF_WEEK_IN_MONTH |
当前月中的第几个星期 |
当前月第1-7天是第一个星期,8-14是第二个星期,以此类推 |
| HOUR_OF_DAY |
一天中的第几个小时 |
|
| MINUTE |
一小时中的第几分钟 |
|
| SECOND |
一分钟中的第几秒 |
|
| MILLISECOND |
一秒中的第几毫秒 |
/*** 获取一周里的第几周** @param date* @return*/public static int getDayOfWeek(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.DAY_OF_WEEK);}/*** 获取一个月里的第几天** @param date* @return*/public static int getDayOfMonth(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); return calendar.get(Calendar.DAY_OF_MONTH);}
public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS"); System.out.println("当前时间是:" + sdf.format(new Date())); Calendar ca = Calendar.getInstance(); System.out.println("当前年份:" + ca.get(Calendar.YEAR)); System.out.println("当前月:" + ca.get(Calendar.MONTH));// 初始月份是从0开始,所以输出值比是几月份小1 System.out.println("当前日期:" + ca.get(Calendar.DATE)); System.out.println("当前年份第几个星期:" + ca.get(Calendar.WEEK_OF_YEAR)); System.out.println("当前月份第几个星期:" + ca.get(Calendar.WEEK_OF_MONTH)); System.out.println("当前年份第几天:" + ca.get(Calendar.DAY_OF_YEAR)); System.out.println("当前月份第几天:" + ca.get(Calendar.DAY_OF_MONTH)); System.out.println("当前星期第几天:" + ca.get(Calendar.DAY_OF_WEEK)); System.out.println("当前月份第几个星期:" + ca.get(Calendar.DAY_OF_WEEK_IN_MONTH)); System.out.println("当天第几个小时:" + ca.get(Calendar.HOUR_OF_DAY)); System.out.println("当前小时第几分钟:" + ca.get(Calendar.MINUTE)); System.out.println("当前分钟第几秒:" + ca.get(Calendar.SECOND)); System.out.println("当前秒数第几毫秒:" + ca.get(Calendar.MILLISECOND));}/**当前时间是:2022-07-01 11:01:59:628当前年份:2022当前月:6当前日期:1当前年份第几个星期:27当前月份第几个星期:1当前年份第几天:182当前月份第几天:1当前星期第几天:6当前月份第几个星期:1当天第几个小时:11当前小时第几分钟:1当前分钟第几秒:59当前秒数第几毫秒:629*/