java时间

Posted zhoudingzhao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java时间相关的知识,希望对你有一定的参考价值。

Calendar.getInstance().getTime() 获取当前时间(包括星期和时区 CST China Standard Time):  Fri Jan 06 21:03:36 CST 2017

Calendar cal = Calendar.getInstance();

完整显示今天当前的日期和时间:

第一种方法:
DateFormat fmtDateTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(fmtDateTime.format(new Date()));
输出:2017-01-06 21:19:02

 

第二种方法:

cal.setTime(new Date()) ;

System.out.println( fmtDateTime.format(cal.getTime()) );  

输出:2017-01-06 23:41:00 

 

显示年份:

Calendar cal = Calendar.getInstance();

System.out.println(cal.get(Calendar.YEAR));

输出: 2017

显示月份:从0开始,要加1 

System.out.println(cal.get(Calendar.MONTH) + 1);

 

cal.get(Calendar.MINUTE) 或者 cal.get(Calendar.HOUR_OF_DAY) 输出的是 int 类型。

一小时后:

第一种方法:

System.out.println(cal.get(Calendar.HOUR_OF_DAY)+1);

第二种方法:改变了 HOUR_OF_DAY 的值:

cal.add(Calendar.HOUR_OF_DAY, 1);
System.out.println(cal.get(Calendar.HOUR_OF_DAY));

 

6分钟前,(如果当前时间是2017-01-06 23:32:39):

第一种方法:

System.out.println(cal.get(Calendar.MINUTE) - 6);

第二种方法:

cal.add(Calendar.MINUTE, -6);
int minute = cal.get(Calendar.MINUTE);
System.out.println(minute);

输出的都是:26

 

String time1 = fmtDateTime.format(cal.getTime());
System.out.println(time1);    

输出: 2017-01-06 23:26:39

 

比较两个时间:

Calendar cal = Calendar.getInstance();

Calendar cal2 = Calendar.getInstance();

cal2.add(Calendar.HOUR, 7);   //第二个时间在7小时之后

System.out.println( cal.compareTo(cal2));   //cal 比 cal2 小,输出 -1 。

计算两个时间差:

long min = cal2.getTimeInMillis() - cal.getTimeInMillis();    //微妙
long diffHour = min / (1000 * 60 * 60);     //换算成小时
System.out.println(diffHour);   //输出 7

 










以上是关于java时间的主要内容,如果未能解决你的问题,请参考以下文章

java中的当前时间减去天数

java中如何设置时间和显示时间??

java 时间段查询

java 随机时间

Java 存储时间戳的几种方式

java 中 判断时间问题