如何从Java中的ArrayList中删除重复的元素

In this tutorial you will learn how to remove duplicate elements from arraylist in Java.

在本教程中,您将学习如何从Java中的arraylist中删除重复的元素。

We can remove repeated elements in arraylist by two ways.

我们可以通过两种方式删除arraylist中重复的元素。

  • Using HashSet – Do not maintain the insertion order.

    使用HashSet –不要维护插入顺序。

  • Using LinkedHashSet – Maintain the insertion order.

    使用LinkedHashSet –维护插入顺序。

First we create an ArrayList and add some duplicate elements to it.

首先,我们创建一个ArrayList并向其中添加一些重复的元素。

Now copy elements of ArrayList to HashSet or LinkedHashSet.

现在,将ArrayList的元素复制到HashSet或LinkedHashSet。

Remove all elements of ArrayList by clear() method.

通过clear()方法删除ArrayList的所有元素。

Finally copy elements of HashSet or LinkedHashSet back to the ArrayList.

最后,将HashSet或LinkedHashSet的元素复制回ArrayList。

Below example shows how to implement this.

下面的示例显示了如何实现此目的。

如何从Java中的ArrayList中删除重复的元素 (How to Remove Duplicate Elements from ArrayList in Java)

package com;
 
import java.util.ArrayList;
import java.util.HashSet;
import java.util.LinkedHashSet;
 
public class RemoveDuplicateElements {
	public static void main(String args[]){
		ArrayList<String> al1=new ArrayList<String>();
		ArrayList<String> al2=new ArrayList<String>();
		HashSet<String> hs=new HashSet<String>();
		LinkedHashSet<String> lhs=new LinkedHashSet<String>();
		
		al1.add("C");
		al1.add("C++");
		al1.add("C++");
		al1.add("Android");		
		al1.add("Java");
		al1.add("Java");
		
		al2.addAll(al1);
		
		System.out.println("HashSet");
		System.out.println("Before: "+al1);
		
		hs.addAll(al1);
		al1.clear();
		al1.addAll(hs);
		System.out.println("After: "+al1);
 
		System.out.println("\nLinkedHashSet");
		System.out.println("Before: "+al2);
 
		lhs.addAll(al2);
		al2.clear();
		al2.addAll(lhs);
		System.out.println("After: "+al2);
	}
}

Output

输出量

How to Remove Duplicate Elements from ArrayList in Java

You can observe the output. In case of HashSet, the insertion order is not maintained while in LinkedHashSet the insertion order is maintained.

您可以观察输出。 对于HashSet,不保留插入顺序,而在LinkedHashSet中,保留插入顺序。

Comment below if have any doubts regarding above tutorial.

如果对以上教程有任何疑问,请在下面评论。

翻译自: https://www.thecrazyprogrammer.com/2016/03/remove-duplicate-elements-arraylist-java.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值