java 时间类型比较

今天遇到一个问题,需要在固定的执行某段代码 但是呢 又不能写定时。就是在数据接口中 只有在固定的时间才存储数据。
就牵扯到事件类型的比较了。
因为也不经常用,就整理一下几种日期类型比较的方法。

1、用compareTo()方法:
public class methodTest {
	
	public static void main(String[] args) {
		dateCompare();
	}
	
	/**
	 * 测试时间比较方法
	 */
	public static void dateCompare(){
		String date1 = "09:39:27";
		String date2 = "11:40:22";
		
		DateUtil dateUtil = new DateUtil();
		Date strToDate1 = dateUtil.strToDate(date1, "HH:mm:ss");
		Date strToDate2 = dateUtil.strToDate(date2, "HH:mm:ss");
		
		
		System.out.println(strToDate1.compareTo(strToDate2));
	}

}

返回值 大于0 表示 strToDate1大于 strToDate2
返回值 小于0 表示 strToDate1小于 strToDate2
返回值 等于0 表示 strToDate1等于 strToDate2

那一段 DateUtil dateUtil = new DateUtil(); 是一个日期工具类 我之前发过 附上连接

日期时间转换的工具类:https://blog.csdn.net/qq_42684504/article/details/106096866

2、直接用Date自带方法before()和after()比较
public class methodTest {
	
	public static void main(String[] args) {
		dateCompare();
	}
	
	/**
	 * 测试时间比较方法
	 */
	public static void dateCompare(){
		String date1 = "09:39:27";
		String date2 = "11:40:22";
		
		DateUtil dateUtil = new DateUtil();
		Date strToDate1 = dateUtil.strToDate(date1, "HH:mm:ss");
		Date strToDate2 = dateUtil.strToDate(date2, "HH:mm:ss");
		
		
		System.out.println(strToDate1.before(strToDate2));
		System.out.println(strToDate1.after(strToDate2));
	}

}

返回的是Boolean类型

3、getTime()方法 date格式换成毫秒值 比较毫秒值大小
public class methodTest {
	
	public static void main(String[] args) {
		dateCompare();
	}
	
	/**
	 * 测试时间比较方法
	 */
	public static void dateCompare(){
		String date1 = "09:39:27";
		String date2 = "11:40:22";
		
		DateUtil dateUtil = new DateUtil();
		Date strToDate1 = dateUtil.strToDate(date1, "HH:mm:ss");
		Date strToDate2 = dateUtil.strToDate(date2, "HH:mm:ss");
		
		long time1 = strToDate1.getTime();
		long time2 = strToDate2.getTime();
		
		System.out.println(time1<time2);
	}

}

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

散装程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值