如何在 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("The date 1 is: " + sdformat.format(d1));
      System.out.println("The date 2 is: " + sdformat.format(d2));
      if(d1.compareTo(d2) > 0) {
         System.out.println("Date 1 occurs after Date 2");
      } else if(d1.compareTo(d2) < 0) {
         System.out.println("Date 1 occurs before Date 2");
      } else if(d1.compareTo(d2) == 0) {
         System.out.println("Both dates are equal");
      }
   }
}

在上面的示例中,日期 d1 發生在日期 d2 之前,因此它可以在控制檯中顯示“日期 1 發生在日期 2 之前”。

輸出

The date 1 is: 2019-04-15
The date 2 is: 2019-08-10
Date 1 occurs before Date 2

更新於:2023 年 11 月 29 日

79K+ 瀏覽

開啟你的 事業

完成課程認證

開始
廣告
© . All rights reserved.