ZKX's LAB

arraylist 重复数据 C#ArrayList重复数据删除

2021-04-23知识4

C# ArrayList 怎样去掉重复值,用简单的for过滤重复值,来循环输出lit数据。

C#ArrayList重复数据删除 那个是引用类型的问题,ArrayList.Contains(object)里面的object比较的是引用(就像是一个指针),object的引用要指向的实际值一致才返回true。要比较对像的实际值要用Equals(object),当然,在你的对像里重载Equals(object)函数,例如:public override bool Equals(object obj){ if(((yourClassName)object).name=this.name)return true;elsereturn false;}然后移除重复值如下:for(int ii=0;ii;ii+){for(int jj=ii+1;jj;jj+){if(list[ii].Equals(list[jj]))list.RemoveAt(jj);jj-;由于刚刚删除了一个,所以jj要后退一个}}

怎么去掉arraylist里的重复数据 public static void main(String[]args){ArrayList array=new ArrayList();array.add(\"王麻e799bee5baa6e79fa5e98193e59b9ee7ad9431333361326338子\");array.add(\"李四\");array.add(\"张三\");array.add(\"张三\");array.add(\"张三\");array.add(\"李四\");array.add(\"王五\");array.add(\"王五\");array.add(\"李四\");array.add(\"李四\");array.add(\"李四\");array.add(\"王麻子\");for(int i=0;i();i+){for(int j=0;j();j+){if(i。j){if(array.get(i).equals(array.get(j))){array.remove(j);j-;}}}}for(int i=0;i();i+){System.out.println(array.get(i));}}照着楼主的思路写,基本就加了个判断 外层循环 的下标不能等于内层循环下标,内外层下标一致,值肯定是一直的,还有for循环的里面的判断改了一下还有下面的人说 用set也是个好办法,set 能过滤重复值 HashSet 对象.add(值),循环Hashset 添加到ArrayList 对象

#arraylist 重复数据

随机阅读

qrcode
访问手机版