今天在JDK6上做开发,遇到一个很诡异的问题. Domain中一个实体是Date,称为变量 a, 使用Calendar构造出来的Date,称为变量b, 虽然都是同一天,比如 2016-11-11 00:00:00,但是调用equals的结果却是不一样,为什么会出现这个情况? System.out.println(a.equals(b)); // false System.out.println(b.equals(a)); // true Domain的变量来自Hibernate,虽然其类型描述为