You can remove duplicates or repeated elements from ArrayList in Java by converting ArrayList into HashSet in Java. but before doing that just keep in mind that Set doesn't preserver insertion order which is guaranteed by List, in fact that’s the main difference between List and Set in Java. So when you convert ArrayList to HashSet all duplicates elements will be removed but insertion order will be lost. Let’s see this in action by writing a Java program to remove duplicates from ArrayList in Java. In this Java collection tutorial we will see both approach of deleting duplicates from ArrayList e.g using Hashset and LinkedHashSet and compare order of elements in final ArrayList which contains no duplicates. If you are not very familiar of What is an ArrayList and HashSet in Java collection framework, I suggest reading Java ArrayList Example and 10 HashSet Example in Java. These articles contains good introduction of most common used collection in Java i.e. ArrayList and HashSet.
Java program to delete duplicates from ArrayList
Here is a quick example of removing duplicates from ArrayList in Java. Suppose you have an ArrayList of String which contains 4 Strings out of those one is duplicate and we want to remove that duplicate:
Now if you have noticed here duplicate entry "Android" has been removed from ArrayList but order of ArrayList is not same. Since we have converted ArrayList to HashSet we have lost insertion order of elements. but don't worry there is another way of removing duplicates from ArrayList without losing order of elements, for that instead of HashSet we need to use LinkedHashSet, Which guarantees insertion order. Just remember checking whether ArrayList contains duplicates or not is completely different than removing it, which is what we are doing here. Here is a another example of removing duplicate entries from ArrayList without losing insertion order or entries:
So now we know that how to remove duplicates from ArrayList in Java and also knows how to preserver order of element while removing duplicates from ArrayList. If you don't prefer converting List to Set than you can still go with copying data from one ArrayList to other ArrayList and removing duplicates by checking with ArrayList.contains() method.
Related Java ArrayList tutorials from this Blog