📜  Java中的 Calendar compareTo() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:31:50.778000             🧑  作者: Mango

Java中的 Calendar compareTo() 方法及示例

简介

Calendar 类是用来处理日期和时间的类,它提供了许多方法来获取、设置、格式化和比较日期。compareTo() 方法是 Calendar 类中的一个比较方法,用来比较两个日期的先后顺序。

方法签名
public int compareTo(Calendar anotherCalendar)
返回值

如果调用该方法的 Calendar 对象表示的日期是早于参数 anotherCalendar 表示的日期,方法返回负整数。如果两个日期相同,返回 0。如果调用该方法的 Calendar 对象表示的日期是晚于参数 anotherCalendar 表示的日期,方法返回正整数。

示例

下面是一个简单的示例,用于演示 compareTo() 方法的用法。

import java.util.Calendar;

public class Main {
    public static void main(String[] args) {
        Calendar cal1 = Calendar.getInstance();
        Calendar cal2 = Calendar.getInstance();
        cal2.set(2022, Calendar.DECEMBER, 31);

        int result = cal1.compareTo(cal2);
        if (result < 0) {
            System.out.println("cal1 早于 cal2");
        } else if (result == 0) {
            System.out.println("cal1 等于 cal2");
        } else {
            System.out.println("cal1 晚于 cal2");
        }
    }
}

在本示例中,我们通过调用 Calendar 类的 getInstance() 方法,获取了当前日期的 Calendar 对象 cal1。然后,我们创建了一个新的 Calendar 对象 cal2,它代表 2022 年 12 月 31 日。

接下来,我们调用了 cal1compareTo() 方法,并将 cal2 对象作为参数传递进去。根据方法的返回值,我们判断了 cal1cal2 的先后顺序,并输出了对应的提示信息。

执行上述代码,输出结果如下:

cal1 早于 cal2

这是因为当前日期早于 2022 年 12 月 31 日。如果我们将 cal2 对象的年份改为 2020 年,再次运行该程序,输出的结果将变为:

cal1 晚于 cal2

这是因为当前日期晚于 2020 年 12 月 31 日。