如何从 java 中的 ArrayList 对象中移除冗余元素?
接口集不允许重复元素。此接口的 add() 方法接受元素并将其添加到 Set 对象中,如果添加成功,则返回 true,如果你尝试使用此方法添加现有元素,则添加操作将失败并返回 false。
因此,要移除 ArrayList 对象的冗余元素 -
获取/创建所需的 ArrayList。
创建一个空集合对象。
尝试将 ArrayList 对象的所有元素添加到集合目标。
使用 clear() 方法清除 ArrayList 的内容。
现在,使用 addAll() 方法再次将集合对象的内容添加到 ArrayList。
示例
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class RemovingDuplicates {
public static void main(String[] args){
//Instantiating an ArrayList object
ArrayList<String> list = new ArrayList<String>();
list.add("JavaFX");
list.add("Java");
list.add("JavaFX");
list.add("OpenCV");
list.add("Java");
list.add("JOGL");
list.add("JOGL");
list.add("HBase");
list.add("Flume");
list.add("HBase");
list.add("Impala");
System.out.println("Contents of the Array List : \n"+list);
//Retrieving Iterator object of the ArrayList class
Iterator<String> it = list.iterator();
//Creating an empty Set object
Set<String> set = new HashSet<String>();
//Adding elements of the ArrayList to the Set object
while(it.hasNext()) {
set.add(it.next());
}
//Removing all the elements from the ArrayList
list.clear();
//Adding elements of the set back to the list
list.addAll(set);
System.out.println("Contents of the Array List after removing duplicate elements: \n"+list);
}
}输出
Contents of the Array List : [JavaFX, Java, JavaFX, OpenCV, Java, JOGL, JOGL, HBase, Flume, HBase, Impala] Contents of the Array List after removing duplicate elements: [JavaFX, Java, OpenCV, JOGL, Flume, Impala, HBase]
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP