Interface sets do not allow duplicate elements. The add() method of this interface accepts elements and adds them to the Set object, returning true if the addition is successful; if you try to add an existing element using this method, the add operation fails and returns false.
So, to remove redundant elements in an ArrayList object, you can follow these steps:
Get/Create the required ArrayList.
Create an empty set object.
Try to add all elements of the ArrayList object to the set object.
Use the clear() method to clear the contents of ArrayList.
Now, use the addAll() method to add the contents of the set object to the ArrayList again.
Demonstration
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]
The above is the detailed content of How to remove redundant elements from ArrayList object in Java?. For more information, please follow other related articles on the PHP Chinese website!