Calendar 日历类的时间操作

2019-08-06  本文已影响0人  云上攻城狮

Java Calendar 日历类的时间操作,这也许是 Java 环境下创建和管理日历及操作时间最简单的一个方案了,示范代码也很简单。

演示了获取时间,日期时间的累加和累减,以及日期时间的比较。

注意事项:

Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 进行表示。

而 Calendar.DAY_OF_WEEK 定义值如下,每周从 SUNDAY 开始,从 1 ~ 7:

Calendar.SUNDAY = 1

Calendar.MONDAY = 2

Calendar.TUESDAY = 3

Calendar.WEDNESDAY = 4

Calendar.THURSDAY = 5

Calendar.FRIDAY = 6

Calendar.SATURDAY = 7

//创建Calendar对象  

Calendar calendar = Calendar.getInstance();  

//对calendar设置时间的方法  

//设置传入的时间格式  

SimpleDateFormat dateFormat =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  

//对calendar设置为date指定的日期  

calendar.setTime(date);  

set(int field, int value) - 是用来设置"年/月/日/小时/分钟/秒/微秒"等值

add(int field, int amount)  add 可以对 Calendar 的字段进行计算。如果需要减去值,那么使用负数值就可以了,如 add(field, -value)。

//calendar取得当前时间的方法  

calendar.setTime(new Date());  

str =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime());  

//显示年份  

int year = calendar.get(Calendar.YEAR); 

//显示月份(从0开始,实际显示要加1)  

int month = calendar.get(Calendar.MONTH); 

//本周几  

int week = calendar.get(Calendar.DAY_OF_WEEK);  

//本月的第几天  

int DAY_OF_MONTH = calendar.get(Calendar.DAY_OF_MONTH);

// 3小时以后    

calendar.add(Calendar.HOUR_OF_DAY,3);    

int HOUR_OF_DAY = calendar.get(Calendar.HOUR_OF_DAY);  

// 当前分钟数    

int MINUTE = calendar.get(Calendar.MINUTE); 

// 15 分钟以后    

calendar.add(Calendar.MINUTE,15);          //MINUTE + 15 = 22  

MINUTE = calendar.get(Calendar.MINUTE);  

// 30分钟前    

calendar.add(Calendar.MINUTE, -30);  

MINUTE = calendar.get(Calendar.MINUTE); 

// 创建一个 Calendar 用于比较时间    

Calendar calendarNew = Calendar.getInstance();   

// 设定为 5 小时以前,后者大,显示 -1    

calendarNew.add(Calendar.HOUR, -5);    

System.out.println("时间比较:" + calendarNew.compareTo(calendar));   

// 设定7小时以后,前者大,显示 1    

calendarNew.add(Calendar.HOUR, +7);    

System.out.println("时间比较:" + calendarNew.compareTo(calendar));

上一篇 下一篇

猜你喜欢

热点阅读