当前位置: 首页 > 编程笔记 >

Java比较两个日期的方法

陆城
2023-03-14
本文向大家介绍Java比较两个日期的方法,包括了Java比较两个日期的方法的使用技巧和注意事项,需要的朋友参考一下

在Java中,可以使用Comparable接口的compareTo()方法比较两个日期。如果两个日期相等,此方法返回0;如果date1在date2之后,则返回值大于0;如果date1在date2之前,则返回值小于0。

句法

int compareTo(T o)

示例

import java.text.*;
import java.util.Date;
public class CompareTwoDatesTest {
   public static void main(String[] args) throws ParseException {
      SimpleDateFormat sdformat = new SimpleDateFormat("yyyy-MM-dd");
      Date d1 = sdformat.parse("2019-04-15");
      Date d2 = sdformat.parse("2019-08-10");
      System.out.println("date 1: " + sdformat.format(d1));
      System.out.println("date 2: " + sdformat.format(d2));
      if(d1.compareTo(d2) > 0) {
         System.out.println("date1在date2之后");
      } else if(d1.compareTo(d2) < 0) {
         System.out.println("date1在date2之前");
      } else if(d1.compareTo(d2) == 0) {
         System.out.println("两个日期相等");
      }
   }
}

在上面的例子中,日期d1发生在日期d2之前,因此它可以在控制台中显示“date1发生在date2之前”。

输出结果

date 1: 2019-04-15
date 2: 2019-08-10
date1在date2之前
 类似资料:
  • 问题内容: 我需要在Java中比较两个日期。我正在使用这样的代码: 这是行不通的。变量的内容如下: 包含 包含 我该如何解决? 问题答案: 日期相等性取决于两个等于毫秒的日期。使用创建新的Date对象将永远不会等于过去创建的日期。Joda Time 的API简化了日期的处理。但是,仅使用Java的SDK:

  • 问题内容: 有人可以建议一种使用JavaScript 比较 两个 大于,小于和过去的 日期 的值的方法吗?这些值将来自文本框。 问题答案: 该Date对象会做你想要的东西- 构造一个每个日期,然后用它们进行比较,,或。 在,,,和运营商要求使用作为 要清楚的是,仅直接检查日期对象是否相等将不起作用 我建议您使用下拉列表或日期输入的某些类似约束形式,而不要使用文本框,以免您陷入输入验证的困境。

  • 问题内容: 如何使用Python比较两个日期以查看稍后的日期? 例如,我想检查当前日期是否超过了我创建的假期日期列表中的最后日期,因此它将自动发送电子邮件,告诉管理员更新holiday.txt文件。 问题答案: 使用方法和运算符及其种类。

  • 问题内容: 我正在尝试比较两个日期,而我只想比较日期部分而不是时间部分,这就是我在程序中存储日期的方式: 我有一个: 我想用 但是由于还涉及时间部分,所以我无法获得正确的答案。我该如何解决我的问题? 我不想使用JODA-TIME 问题答案: 您可以像这样逐个比较价值 要么 如果您使用Date类,请考虑改用Calendar类这是最优雅的解决方案,为此使用Calendar和Comparator 用法:

  • 我有包含行的表 我想拥有大于且相反的行的百分比。 如果有人知道什么是错误,谢谢! [错误代码:-206,SQL状态:42703]DB2 SQL错误:sqlcode=-206,sqlstate=42703,sqlerrmc=helptable.total,driver=3.57.82)

  • 问题内容: 在我的收藏夹中,每个文档都有2个修改和同步的日期。我想查找已修改>同步,或不存在同步的内容。 我试过了 但没有显示我的期望。有任何想法吗? 谢谢 问题答案: 您不能将一个字段与具有正常查询匹配的另一个字段的值进行比较。但是,您可以使用聚合框架执行此操作: 我在其中输入“您的其他常规查询”,因为您可以使该位使用索引。因此,如果您只想对该字段所在的文档执行此操作,则可以执行以下操作: 用输

  • 我会如何比较以下两个日期?