假设我有一个名为Customer的实体和一个名为CustomerMapper的帮助程序类,该类从表单中获取值。然后,我将此CustomerMapper发送到服务层,在其中从吸气剂中提取值并将新的Customer添加到数据库中。
但是,现在我需要遍历List<Customer>
并检查另一个ArrayList<CustomerMapper>
中是否包含一个customerID。我读到.contains()方法在元素上调用.equals()。所以我想知道对我来说,在Customer上实现equals()是否正确,这样我将发送CustomeMapper类型的对象,而我将正在将customer.getId()与customerMapper.customerId()进行比较。
如果答案是否定的,请说明原因。
编辑:
这就是我想出的。我已经遍历了两位演讲嘉宾并创建了Map<Long, Customer>
和Map<Long, CustomerMapper>
。基本上,我需要删除所有ID不包含在>中的客户。现在我遍历Map<Long, CustomerMapper
并调用Map<Long, Customer>
这是一个好的解决方案,因为这样我有三个for循环。
最佳答案
仅通过两个对象不相等来实现equals()
方法来执行此操作是没有意义的。
只需提取id
并检查CustomerMapper
是否具有相同的内容。