我已经迈出了Employee类 与整型,Employee对象为键值对创建地图 这里是我的地图
Map<Integer,Employee> map = new HashMap<Integer,Employee>();
Employee类bean类,它具有类似名称,ID属性,指定; 地图允许唯一的密钥。但如果您不想在地图中允许重复值 ,则必须在bean类中使用equals方法。
@Override
public boolean equals(Object object){
if (object == null) return false;
if (object == this) return true;
if (this.getClass() != object.getClass())return false;
Employee employee = (Employee)object;
if(this.hashCode()== employee.hashCode())return true;
return false;
}
,并同时增加键值,以地图,你必须使用含有方法
if(!map.containsValue(map.get(id))){
map.put(id,employee);
}
containsValue
内部调用equals()
方法,因此你在骑equals方法 它会检查每一个值(对象)与先前的对象,如果散列码相同 它返回true意味着两者都是相同的对象。
问题:哪些需要删除,哪些需要保留? – BalusC 2010-02-03 21:12:32
为什么你在第一个地方插入重复项?我的意思是,为什么不在插入时检查重复项? – 3lectrologos 2010-02-03 21:20:32
我已经在我的问题中给出了原因。HashMap中的值在从数据库初始加载后更新。因此,我可以首先应用重复条件的原因。 – jagamot 2010-02-03 21:37:40