JAVA Eclipse 3.8 “id”是Product类的主键。我需要在数据结构中存储“Product”列表,该数据结构提供HashSet提供的快速搜索,并且我还需要获取/检索搜索到的对象。使用HashMap会导致冗余的“id”,这是很昂贵的。
答案 0 :(得分:1)
Java的HashSet是使用HashMap实现的,所以它也会有冗余。如果您已经完成性能测试并发现性能受到重大影响,请考虑使用高性能集合库,例如GNU Trove(特别是TIntObjectHashMap)。
答案 1 :(得分:0)
如果您的ID是唯一的(没有两个对象具有相同的ID),只需正确定义待存储对象的equals()方法并改为使用HashSet。