日期:2014-05-20  浏览次数:20899 次

JAVA集合的问题。求高手。。
请问一个JAVA集合的问题,一个Set集合里面是多个Bean对象,假设10个。bean的结构是一个 名字 对应一串数字,用什么方法能找出这些数字是相同的bean呢。需要重新bean的equal方法?。。。求解答

------解决方案--------------------
是啊 override equals和hashcode
------解决方案--------------------
给你思路你慢慢写下去:
先这样
public class TestOne {

public static void main(String[] args) {
List list=new ArrayList();
Map<String,String> bean=new HashMap<String,String>();
bean.put("tom", "001");
bean.put("lucy","001");
bean.put("luc","002");
bean.put("luy","002");
bean.put("luvy","003");
Set set=bean.entrySet();
Iterator it=set.iterator();
while(it.hasNext()){
list.add(it.next());
System.out.println(list);
}
}

}
最后在判断
for(int i=0;i<list.size();i++){
if(list.get(i).hashCode()==list.get(i).hashCode()){
System.out.println(list.get(i).hashCode());
}
}

------解决方案--------------------
哦 equals是通過對象直接比較