【发布时间】:2014-09-24 17:36:30
【问题描述】:
我需要澄清我的方法是对还是错,需要进行任何修改。
让我解释清楚。我将有一个 Excel 文件,其中将有国家代码国家名称年份(mm/yyyy)作为额外的 10 列
countrycode country Name 12/2000 11/2000 10/2000 09/2000 08/2000 07/2000 06/2000 05/2000 04/2000 03/2000 02/2000 01/2000
IND India 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 10.9 11.1 11.2 11.3
USA Uinted States 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 9.1 9.2 9.3
如果该特定年份和国家/地区的任何价格重复出现,我需要在 Excel 文件中显示重复的消息。
对于上述,我是通过这种方式实现的。对于 VO 我用哈希码(国家代码 + 年份 + 价格)和 equals 方法覆盖 hashCode() 和
在插入数据库时,我将此 VO 传递给 HashSet 并消除重复并将原始列表大小的大小与 HashSet 大小进行比较。
但有时如果有独特的价格,我也会收到重复的消息。
请建议我的方法是对还是错或我可以实施的其他方式。
【问题讨论】:
-
价格是否存储为浮点数/双精度数?如果是这样,可能是两个看似不同的值用 float/double 表示相同。
-
@nablex 现在只在字符串中
-
您的方法并非完全错误,尽管您也依赖不相等对象的哈希码来区分,但不一定如此。请提供一个可以重现此问题的最小代码示例。
-
@developer 请考虑重新表述您的问题,并发布一些代码。就目前而言,我真的不明白你做了什么,问题到底是什么。
-
@posdef 确定我会在一小时内更新问题,忙于工作。
标签: java collections