java中怎样去除list中重复的数据,并且显示重复数据的条数 比如说list中的数据是字符串类型的数据,有重复的数据,我只要重复数据的一条,并且显示每个数据重复的条数。.
如何去除 list里的重复数据 1、通过循环进2113行删除public static void removeDuplicate(List list){for(int i=0;i()-1;i+){for(int j=list.size()-1;j>;i;j-){if(list.get(j).equals(list.get(i))){list.remove(j);}}}System.out.println(list);}2、通过HashSet删除public static void removeDuplicate(List list){HashSet h=new HashSet(list);list.clear();list.addAll(h);System.out.println(list);}3、删除重复元素5261,并保持顺4102序。(我没试)1653public static void removeDuplicateWithOrder(List list){Set set=new HashSet();List newList=new ArrayList();for(Iterator iter=list.iterator();iter.hasNext();{Object element=iter.next();if(set.add(element))newList.add(element);}list.clear();list.addAll(newList);System.out.println(\"remove duplicate\"+list);}4、定义一个方法,调用即可。publi List<;String>;getNewList(List<;String>;li){List<;String>;list=new ArrayList();for(int i=0;i();i+){String str=li.get(i);获取传入集合对象的每一个元素if。list.contains(str)){/查看新集合中是否有指定的元素,如果没有则加入list.add(str);}}。
怎么去除掉数组中的重复的数值,不能使用集合(set,list,map),急!!哪位高手帮忙看下哈 很简单啊,就像排序一样,只要简单修改一下就可以了,以下是我自己在写动态顺序表时写的一个过滤表中重复数值(原理和STL中的向量一样,使用的是动态数组为基础,加了模板技术,C++的)当然也可以自动增长数组和减少数组。如果要看全部数据结构的代码就进我文库:http://wenku.baidu.com/view/e42740dc195f312b3169a543.html这只是其中的一个函数,没有进行修改的,所以里面有些对象是定义在类中的,但原理是一样的,一看就明白。templatebool Sequence<;Tey>;:Filter()/过滤表中重复数据{if(length=0)/判断表是否为空return false;int Mark=0;for(int i=0;i;i+){Tey m=phod[i];将要比较的数据保存至变量mfor(int n=i+1;n;n+){if(phod[n]=m)/查找是否有重复数据,如果有就删除{for(int j=n;j;j+)phod[j]=phod[j+1];length-;删除一个就减少一个元素值n-;每一次删除后,需要保持下标不动,以免漏掉数据Mark=1;表进行了过滤操作就修改标志}}}if((length+lon))/判断删除元素后,表中空元素是否达到减少表长的条件。if。Reduction())/即如果空元素大于或等于10就对表缩短return false;缩短表长调用的Reduction()函数if(Mark>;0)/如果进行了删除操作就返回。