日期:2014-05-18  浏览次数:20632 次

请问如何删除arrayList中的重复的值?
比如有一个arraylist   里面有值   "1 ", "1 ", "1 ", "2 ", "3 ", "2 ",请问怎样去掉重复的,过滤后变成 "1 ", "2 ", "3 ",谢谢了

------解决方案--------------------
用SET接口实现的集合,好像不会添加重复的值。
------解决方案--------------------
放进一个set,去除重复,再取出来放进ArrayList
------解决方案--------------------
如果是SET接口下面的类的话,那么就没有重复的值了,如果你一定要用ARAYLIST的话,我想在ARRAYLIST里面是不可能实现的,你可以在数据库里面进行过滤一下!
------解决方案--------------------
出售以下资料、代码

1.JSP编程技巧百问集锦(100个问题;一个问题一段代码) 报价:30 RMB
2.Asp.Net编程技巧百问集锦(100个问题;一个问题一段代码) 报价:30 RMB
3.JavaScript编程技巧百问集锦(一个问题一段代码) 报价:20 RMB
4.在线书店系统 (jsp+javabean+servlet Web版 全套源码 安装即用) 报价:150 RMB
5.办公自动化系统(jsp+javabean+servlet Web版 全套源码 安装即用) 报价:300 RMB

需要者请联系:e_mail:fzlotuscn@yahoo.com.cn QQ:595563946


新年资料、系统程序代码大礼包:

1.JSP编程技巧百问集锦(100个问题;一个问题一段代码)
2.Asp.Net编程技巧百问集锦(100个问题;一个问题一段代码)
3.JavaScript编程技巧百问集锦(一个问题一段代码)
4.在线书店系统 (jsp+javabean+servlet Web版 全套源码 安装即用)
5.办公自动化系统(jsp+javabean+servlet Web版 全套源码 安装即用)

报价:350 RMB

需要者请联系:e_mail:fzlotuscn@yahoo.com.cn QQ:595563946
------解决方案--------------------
//不知道行不行
public void trimArray(List list){
Iterator it = list.iterator();
HashSet set = new HashSet();
while(it.hasNext()){
Object obj = it.next();
if(set.contains(obj)) it.remove();
else set.add(obj);
}
}
------解决方案--------------------
这个出售代码的真TMD恶心,不能每贴你都加个广告吧,晕菜
------解决方案--------------------
出售代码的人确实恶心

都被封了好几个号都不知道悔改

我觉得应该把LIST里的值都放到一个SET里面

这样就能避免重复了

但是缺点是

取出来是无序的

也可以自己进行遍历比较

然后放到一个新的LIST里面
------解决方案--------------------
public class DelChar {
public void delDuplicate(){
String tempStr[] = { "1 ", "2 ", "1 ", "2 ", "3 ", "2 "};
List tempList = new ArrayList();
List ResultList = new ArrayList();
for(int i=0;i <tempStr.length;i++){
tempList.add(tempStr[i]);
}
System.out.println(tempList);
for(int m=0;m <tempList.size();m++){
for(int n=m+1;n <tempList.size();){
if(tempList.get(m)==tempList.get(n)){
tempList.remove(n);
}
else{
n++;
}
}
}

System.out.println(tempList);

}
------解决方案--------------------
对于这种arraylist只存放基本类型的话,很简单
public Collection trimArray(List list){
Iterator it = list.iterator();
Collection newColl = new ArrayList();
while(it.hasNext()){
Object obj = it.next();
if(!newColl.contains(obj)) {
newColl.add(obj);
}
}
return newColl;
}
另外,如果存放的是对象的话,那就得重写你的equals方法了。
------解决方案--------------------