java中如何两个日期比大小【入门】

本文介绍了如何在Java中使用String型日期进行compareTo()比较,以及Date类型的before()和after()方法。强调了日期格式的一致性对于正确比较的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

String型日期(获取系统当前时间)

String日期比较要注意

二、日期型Date直接比较


String型的日期通过compareTo()来比较,因为String实现了comparable接口

  • eDate.compareTo(sDate) 结果>0 说明前者[晚于]后者

String型日期(获取系统当前时间)

获取今天当前时间,精确到秒

String t=new SimpLeDateFormat("yyyy-MM-dd:ss").format(new Date());

如果获取当前时间要 精确到毫秒 的话如下

String t=new SimpLeDateFormat("yyyy-MM-dd:ss:SSS").format(new Date());

比较大小示例

public void a13()
String sDate="2023-12-18 00:00:00";

//当前时间endDate 是2023-12-18 09:52:41
String eDate= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date());
//return
System.out.println(eDate.compareTo(sDate));

返回结果是1,即 eDate>sDate

String日期比较要注意
  • 比较的字符串格式要一致,yyyy-MM-dd hh:mm:ss 的格式可以正常运行
  •  yyyyMMddhhmmss 的格式不可以正常使用

二、日期型Date直接比较

日期型Date的比较通过before()和after()来完成,返回值均为boolean

  • before(Date and) :在指定日期and之前
  • after(Date and) :在指定日期and之后
String sDate="2023-12-20 00:00:00";
String eDate= "2023-12-21 23:59:59";
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
try{
    Date date1=simpleDateFormat.parse(sDate);
    Date date2=simpleDateFormat.parse(eDate);
    
    // true , 12-20号 在 12-21号 之前 
       System.out.println(date1.before(date2));
}catch (Exception e){

}

运行结果

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值