`

两种方法删除ArrayList里重复元素

    博客分类:
  • java
阅读更多
1.方法一:
/** List order not maintained **/

  public static void removeDuplicate(ArrayList arlList)
  {
   HashSet h = new HashSet(arlList);
   arlList.clear();
   arlList.addAll(h);
  }



2.方法二:
/** List order maintained **/

public static void removeDuplicateWithOrder(ArrayList arlList)
 {
 Set set = new HashSet();
 List newList = new ArrayList();
 for (Iterator iter = arlList.iterator();    iter.hasNext(); ) {
 Object element = iter.next();
   if (set.add(element))
      newList.add(element);
    }
    arlList.clear();
    arlList.addAll(newList);
}

分享到:
评论
2 楼 xunke515 2013-07-29  
第二个,如果要带顺序的话,new个treeset也可以吧.
1 楼 liushian 2010-06-07  
第一个好,简单!正好用上了!

相关推荐

    2种Java删除ArrayList中的重复元素的方法

    总结来说,Java中删除`ArrayList`中的重复元素主要有两种方式:通过`HashSet`和`LinkedHashSet`。`HashSet`适用于不关心元素顺序的情况,而`LinkedHashSet`则适用于需要保持元素插入顺序的场景。这两种数据结构都是...

    java 去除重复元素

    本文将详细介绍如何在Java中去除重复元素,主要关注数组和列表这两种常见数据结构。 一、数组去重 1. 使用HashSet HashSet是一个不允许有重复元素的集合,当我们尝试将一个数组中的所有元素添加到HashSet时,它会...

    ArrayList上机练习1

    这可以通过调用`addAll`并将结果存储在一个新的`ArrayList`中实现,然后使用`HashSet`来去除重复项,因为`HashSet`不允许重复元素。 - 使用`Collections.sort()`方法,对合并后的列表按`stu_no`、`name`和`age`字段...

    Java实现删除排序数组中重复元素的方法小结【三种方法比较】

    在Java编程中,删除排序数组中的重复元素是一个常见的问题,特别是在数据处理和算法优化的场景。本篇文章将探讨三种不同的方法来实现这个功能,并对比它们的优劣。 首先,第一种方法是通过`ArrayList`来解决。这种...

    Java中ArrayList的使用方法简单介绍

    此外,上述内容还提供了两种基于循环的去重方法: **去重复方法一** 这个方法首先对ArrayList进行排序,然后遍历列表,如果相邻的两个元素相等,则移除重复项。这种方法的缺点是改变了原列表的顺序,且在元素数量较...

    Java基础加强_ArrayList_HashSet的比较及Hashcode分析

    在Java编程语言中,ArrayList和HashSet是两种常用的集合类,它们各自有其特性和应用场景。在实际开发中,理解它们的差异以及如何有效地利用它们是非常重要的。本篇将深入探讨ArrayList与HashSet的区别,并分析...

    java集合类详解(set list ArrayList等java集合类详述)

    Set 是一个不能包含重复元素的集合,SortedSet 是一个按照升序排列元素的 Set。List 是一个有序的集合,可以包含重复的元素,并提供了按索引访问的方式。Map 是一个包含了 key-value 对的集合,SortedMap 是一个按照...

    Java ArrayList实现的快排,归并排序,堆排序

    ArrayList作为Java集合框架中的一员,它提供了丰富的操作接口,包括对元素的添加、删除、修改以及排序等。本篇将重点讲解如何利用ArrayList实现快速排序(Quick Sort)、归并排序(Merge Sort)和堆排序(Heap Sort...

    ArrayList的学习821.docx

    ArrayList和LinkedList是List接口的两种主要实现,各有优缺点。 ArrayList的底层数据结构是一个Object类型的数组,这使得它在读取元素时具有较高的效率,因为数组的随机访问性能优异。ArrayList的这种设计使得在...

    ArrayList.md

    - 删除操作:`remove(int index)`方法用于删除指定位置的元素。删除后,数组中index之后的所有元素都将向前移动一位。 5. **数组转列表**:`ArrayList`提供了多种构造器,可以接受数组作为参数并转换为`ArrayList...

    java 删除数组元素与删除重复数组元素的代码

    在Java编程中,处理数组是常见的任务之一,其中包括删除特定元素和去除...通过以上方法,你可以有效地在Java中删除数组元素和去除重复元素。这些方法在处理数组数据时非常实用,并且可以根据具体需求选择合适的方式。

    ArrayList删除集合中某一属性相同的元素方法(推荐)

    现在,如果我们有一个ArrayList `mList`,其中包含多个NetWork对象,且存在destip属性相同的元素,我们可以使用两层循环来遍历并删除这些重复元素。以下是如何实现这一过程的代码: ```java for (int i = 0; i () -...

    ArrayList的底层原理Java系列2021.pdf

    为了解决这一线程不安全的问题,在多线程环境下使用ArrayList,可以采取以下两种措施: 1. 使用synchronized关键字:通过给ArrayList的方法加上synchronized关键字,可以使得每次只有一个线程可以进行操作,从而保证...

    list集合案例增、删、改、查,ArrayList与LinkedList的区别,LinkedList堆栈/队列的开发

    本篇文章将深入探讨`List`集合的各种操作,包括增、删、改、查,以及`ArrayList`和`LinkedList`两种实现`List`接口的类之间的区别。同时,我们还将讨论如何利用`LinkedList`实现堆栈和队列的功能,并了解`List`集合...

    java对象容器(涉及HashMap,ArrayList,Set等)

    ArrayList提供了添加、删除和修改元素的方法,以及获取长度和遍历元素的功能。它的特点是可以通过索引快速访问元素,但是插入和删除操作可能相对较慢,因为这些操作可能需要移动其他元素来保持列表的连续性。 List...

    java中删除数组中重复元素方法探讨

    总结来说,处理Java数组或集合中的重复元素主要有两种策略: 1. 自定义添加逻辑:在添加元素时进行比较,但效率较低,适合小型数据集。 2. 使用`Set`接口:通过`HashSet`或其他`Set`实现,结合`equals`和`hashCode`...

    手写精简版List和ArrayList,适合新手入门学习jdk源码demo

    在Java编程语言中,`List`和`ArrayList`是两个非常重要的数据结构,它们在实际开发中被广泛应用。本文将针对新手,详细讲解如何手写一个精简版的`List`和`ArrayList`,帮助大家更好地理解JDK源码中的实现原理。 ...

    集合的概念及应用和HashSet保证数据不重复的原理

    这意味着,为了使HashSet能正确识别重复元素,自定义类必须重写`hashCode()`和`equals()`方法,以确保它们遵循一致性原则,即`a.equals(b)`时,`a.hashCode()`应等于`b.hashCode()`。 除了基本的添加操作,HashSet...

    删除其重复

    对于小规模数据,上述两种方法差异不大,但在实际开发中应优先考虑高效算法以提高系统性能。 通过以上分析,我们可以看到在 Java 中处理字符串数组去重的多种方法和技术细节。选择合适的方法不仅能够提高代码质量,...

Global site tag (gtag.js) - Google Analytics