我有两个java对象,其byte[]
字段大小为数百万个。检查这些java对象的Deep Equal的最快和有效方法是什么?
样本实体:
@Entity
public class NormalBook
{
@Id
private String bookId;
@Column
private String title;
@Column
private byte[] pdfFile;
//setters and getters
}
注意:基本上,我是为ORM工具这样做的,我正在使用持久性上下文中存在的对象检查对象(处于托管状态)。
覆盖equals()
或使用* helper方法(错误的选择!),并通过5个步骤进行操作:
1. Check for *not null*.
2. Check for same *type*.
3. Check for *size of byte[]*.
4. Check for `==` (*reference equality* of byte[])
5. Start comparing byte values
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句