📅  最后修改于: 2023-12-03 15:31:52.534000             🧑  作者: Mango
在Java中,GregorianCalendar
是一个实现了Calendar
抽象类的日历类。它提供了许多日期和时间操作的方法。其中,equals()
方法用于比较两个日期是否相同。
public boolean equals(Object obj)
equals()
方法接受一个Object
类型的参数,用于比较两个对象是否相等。如果相等,返回true
,否则返回false
。
以下示例演示了如何使用equals()
方法比较两个GregorianCalendar
对象是否相等。
import java.util.GregorianCalendar;
public class CalendarDemo {
public static void main(String[] args) {
GregorianCalendar cal1 = new GregorianCalendar(2022, 12, 1);
GregorianCalendar cal2 = new GregorianCalendar(2022, 12, 1);
GregorianCalendar cal3 = new GregorianCalendar(2022, 12, 2);
System.out.println(cal1.equals(cal2)); // true
System.out.println(cal1.equals(cal3)); // false
}
}
在上述示例中,我们创建了三个GregorianCalendar
对象,分别表示2022年12月1日、2022年12月1日和2022年12月2日。使用equals()
方法比较这三个对象,发现cal1
和cal2
相等,cal1
和cal3
不相等。
equals()
方法比较的是两个日期的值,而非引用的地址。即使两个GregorianCalendar
对象引用不同,但如果它们表示的日期相同,equals()
方法也会返回true
。equals()
方法的参数必须是一个Object
类型的对象。如果参数不是GregorianCalendar
对象,或者为null
,equals()
方法将抛出ClassCastException
或NullPointerException
异常。GregorianCalendar
的equals()
方法可以用于比较两个日期是否相同。它接受一个Object
类型的参数,返回一个boolean
类型的值。使用时需要注意,比较的是两个日期的值,而参数必须是一个GregorianCalendar
对象。