删除对象数组数据的Java副本 [英] remove duplicates from object array data java
本文介绍了删除对象数组数据的Java副本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
喜
我想知道如何删除对象重复。
hi i want to know how to remove duplicates in object.
例如:
cat c[] = new cat[10];
c[1].data = "ji";
c[2].data = "pi";
c[3].data = "ji";
c[4].data = "lp";
c[5].data = "ji";
c[6].data = "pi";
c[7].data = "jis";
c[8].data = "lp";
c[9].data = "js";
c[10].data = "psi";
我想从对象数组删除重复值。
i would like to remove the duplicates value from object array.
感谢,并提前
推荐答案
我假设你想创建另一个阵列是重复的自由。 (因为你不能改变一个数组的大小)
I assume you want to create another array which is duplicate free. (as you cannot change the size of an array)
您可以实现哈希code和平等相待,使用HashSet的,但是如果没有这些,你可以创建一个比较。
You could implement hashCode and equals and use a HashSet, however without these you can create a Comparator.
但最简单的方法可以使用猫级和猫数组
However the simplest approach may be using the "Cat" class and "cats" array
Cat[] cats = { ... };
Set<String> datas = new HashSet<String>();
List<Cat> catList = new ArrayList<Cat>();
for(Cat cat: cats) if(datas.add(cat.data)) catList.add(cat);
Cat[] unqiueCats = catList.toArray(new Cat[catList.size()]);
这篇关于删除对象数组数据的Java副本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文