相关疑难解决方法(0)

java.util.Date vs java.sql.Date

java.util.Datevs java.sql.Date:何时使用哪个以及为什么?

java sql datetime date jdbc

487
推荐指数
5
解决办法
27万
查看次数

Java相等日期不相等

我刚刚遇到了一个非常奇怪的行为。我想比较2个使用完全相同的日期d1.equals(d2);,但结果是错误的。

调试时,我发现两个日期的“快速时间”为1531951200000。之后,我将检查更改为d1.getTime() == d2.getTime()并得到了相等的结果。

我还检查equals()的方法,java.util.Date这确实几乎完全一样

public boolean equals(Object obj) {
    return obj instanceof Date && getTime() == ((Date) obj).getTime();
}
Run Code Online (Sandbox Code Playgroud)

请注意,这两个对象都是类型java.util.Date这就排除了,有可能是一个区别,即java.util.DateVS java.sql.Date。还要注意,其中一个值是从数据库中读取的,而另一个是从文件中读取的。这两个值都设置为带有java.util.Date字段的同一类的不同实例。

有人对此有解释吗?还是我只是想念一些东西?

java date equals

5
推荐指数
0
解决办法
163
查看次数

标签 统计

date ×2

java ×2

datetime ×1

equals ×1

jdbc ×1

sql ×1