方法一:循环元素删除
// 删除ArrayList中重复元素
public static void removeDuplicate(List list)
{
for ( int i = 0 ; i < list.size() - 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);
}
方法二:通过HashSet剔除
// 删除ArrayList中重复元素
public static void removeDuplicate(List list)
{
HashSet h = new HashSet(list);
list.clear();
list.addAll(h);
System.out.println(list);
}
方法三: 删除ArrayList中重复元素,保持顺序
// 删除ArrayList中重复元素,保持顺序
public 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);
}
// 删除ArrayList中重复元素
public static void removeDuplicate(List list)
{
for ( int i = 0 ; i < list.size() - 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);
} 方法二:通过HashSet剔除
// 删除ArrayList中重复元素
public static void removeDuplicate(List list)
{
HashSet h = new HashSet(list);
list.clear();
list.addAll(h);
System.out.println(list);
} 方法三: 删除ArrayList中重复元素,保持顺序
// 删除ArrayList中重复元素,保持顺序
public 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);
}
本文介绍三种去除ArrayList中重复元素的方法:双层循环遍历删除、利用HashSet特性剔除重复项及保留顺序的同时去除重复项。这些技巧对于Java开发者来说非常实用。
4565

被折叠的 条评论
为什么被折叠?



