类型之比较,获取整小时,前一天时间"/>
java中date类型之比较,获取整小时,前一天时间
在开发web中,我们经常需要用到Date,但是常见的几种方法已经满足不了我们的开发需要,因此在这里拓展一下使用Date的其他方法获取我们想要的结果
1. 获取前一天的时间
//获取前一天的时间
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date date=new Date();
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, -1);
date = calendar.getTime();
System.out.println(sdf.format(date));
2.获取当前时间的后一天
如果第一点已经理解的话,那么获取明天的方法就应该简单了,只是将上面的-1
改为+1
就可以获取明天的时间
//获取后一天的时间
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date date=new Date();
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, +1);
date = calendar.getTime();
System.out.println(sdf.format(date));
3.获取当前时间的整小时时间
//获取整小时
Date date =new Date(System.currentTimeMillis());
//主要是将格式设置为HH:00
SimpleDateFormat formatter = new SimpleDateFormat( "HH:00");
String time = formatter.format(date);
System.out.println(time);
4.获取前某小时的时间
//获取前一小时的时间
SimpleDateFormat sdf=new SimpleDateFormat("HH:mm");
//这里设置你想要的时间
Date date=sdf.parse("08:00");
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
//前面设置的时间-1
calendar.add(Calendar.HOUR_OF_DAY, -1);
date = calendar.getTime();
System.out.println(sdf.format(date))
5.两个时间段的比较
当我们想对两个时间进行比较的时候,我们往往会感到很头疼,现在使用下面的代码就能解决你的头痛
String DateStr1 = "2018-04-11 10:20:16";
String DateStr2 = "2014-04-10 15:50:35";
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date dateTime1 = dateFormat.parse(DateStr1);
Date dateTime2 = dateFormat.parse(DateStr2);
int i = dateTime1pareTo(dateTime2);
System.out.println(i < 0);
两个Date类型的变量可以通过compareTo
方法来比较。此方法的描述是这样的:
如果参数 Date 等于此 Date,则返回值 0
;
如果此 Date 在 Date 参数之前,则返回小于 0
的值;
如果此 Date 在 Date 参数之后,则返回大于 0
的值。
实际上比较的是自1970 年 1 月 1 日 00:00:00 GMT以来的毫秒数。
毫秒数越大的时间越大。
更多推荐
java中date类型之比较,获取整小时,前一天时间
发布评论