‘壹’ java ArrayList 如何去掉重复的对象以及本身
第一种:只要存在重复的元素全部删除
publicArrayList<Object>RemoveRepeated(ArrayList<Object>arr){
ArrayList<Object>tmpArr=newArrayList<Object>();
for(inti=0;i<arr.size();i++){
if(tmpArr.contains(arr.get(i))){
tmpArr.remove(indexOf(arr.get(i)));
}else{
tmpArr.add(arr.get(i));
}
}
returntmpArr;
}
第二种:存在重复的元素只保留一个
publicArrayList<Object>RemoveRepeated(ArrayList<Object>arr){
ArrayList<Object>tmpArr=newArrayList<Object>();
for(inti=0;i<arr.size();i++){
if(!tmpArr.contains(arr.get(i))){
tmpArr.add(arr.get(i));
}
}
returntmpArr;
}
‘贰’ java list的重复对象怎么去除
java list的重复对象,可以使用Set集合类没有重复的数据的特点,将list的数据存入set里面,过滤掉重复的数据,如下代码:
packagecom.qiu.lin.he;
importjava.util.ArrayList;
importjava.util.HashSet;
importjava.util.List;
importjava.util.Set;
publicclassCeshi{
publicstaticvoidmain(String[]args){
List<Integer>li=newArrayList<Integer>();//新建一个list结合
li.add(1);
li.add(2);
li.add(3);
li.add(1);
Set<Integer>se=newHashSet<Integer>();//新建一个set集合
for(Integerinteger:li){
se.add(integer);//过滤重复的数据
}
for(Integerinteger:se){
System.out.println("输出list数组的去重的每个数据"+integer);
}
}
}
运行结果如下:
‘叁’ java编程,文件去重
你把读取的每行文本放入Set对象中就可以去重。不用自己比较了,很方便。
‘肆’ JAVA中如何从ArrayList中删除重复对象
你List中方的是什么?同一种类型对象,判断是否相同需要重写该类的equals()和hashCode()方法,这样就可以放到set中去重。如果是多少种不同类型对象或多种基本类型,那么如何判断是否重复?
arrayList.add(new String("123"));
arrayList.add(new String("123"));
arrayList.add(new int[] { 1, 2, 3 });
arrayList.add(new int[] { 1, 2, 3 });
如果仅仅只是基本类型和字符串对象可以再转换成字符串判断是否重复。
如果是自定义多种不同类型对象,没法进行比较是否重复。或者你把list里面具体放入的是什么类型对象贴出来根据实际情况给你去重。