We help IT Professionals succeed at work.

Removing duplicates from an ArrayList based on object criteria...

javabeat asked
Last Modified: 2013-12-29
Hi all, just after the cleanest way to remove duplicate objects from an arrayList based on criteria in the object (i.e that defines if they're duplicates). I already overide the equals method for general object comparison and dont really wanna create a subclass just to overide another equals but maybe thats the way ahead...
after that i guess i can just create a new Set object passing in the ArrayList....
Thanks in advance
Watch Question

Top Expert 2016

>>...create a subclass just to overide another equals but maybe thats the way ahead...

Yes, it's a possibility. Or you can create something lighter with a wrapper object that just overrides equals and works on the equals of what it's wrapping
Mick BarryJava Developer
Top Expert 2010

just use a loop to remove the duplicates, that makes it easy to use any criteria and is potentially more efficient.
Let me know if u get stuck.

Top Expert 2008

...or you could add all the object to the Set. Duplicates are removed automagically... ;)

You must implement the method on your object type:

boolean equals(Type)
This one is on us!
(Get your first solution completely free - no credit card required)

Gain unlimited access to on-demand training courses with an Experts Exchange subscription.

Get Access
Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant
Empower Your Career
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE

Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

  • Troubleshooting
  • Research
  • Professional Opinions
Unlock the solution to this question.
Join our community and discover your potential

Experts Exchange is the only place where you can interact directly with leading experts in the technology field. Become a member today and access the collective knowledge of thousands of technology experts.

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.


Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.