we can remove duplicate object in user definied list by overriding equals and hashcode method in java.
first create Java Bean.
Person.java
-------------
Then create your main java class.
RemDupList.java
------------------
Output :
first create Java Bean.
Person.java
-------------
- package com.utilitySample;
- public class Person{
- private String name;
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- /**
- * we have to override equals method to avaoid duplicates in userDefined list.
- */
- public boolean equals(Object obj) {
- boolean result = false;
- Person person = (Person) obj;
- if (this.getName().equalsIgnoreCase(person.getName())){
- result = true;
- }
- return result;
- }
- public int hashCode() {
- // TODO Auto-generated method stub
- return 1;
- }
- }
Then create your main java class.
RemDupList.java
------------------
- package com.utilitySample;
- import java.util.ArrayList;
- import java.util.HashSet;
- import java.util.List;
- import java.util.Set;
- public class RemDupList {
- public static void main(String[] args) {
- List<Person> personList = new ArrayList<Person>();
- Person person = new Person();
- person.setName("amazon");
- personList.add(person);
- person = new Person();
- person.setName("amazon");
- personList.add(person);
- person = new Person();
- person.setName("stalin");
- personList.add(person);
- person = new Person();
- person.setName("stalin");
- personList.add(person);
- for (Person pers:personList){
- System.out.println("Before removing duplicates ::"+pers.getName());
- }
- Set<Person> personSet = new HashSet<Person>(personList);
- for (Person pers:personSet){
- System.out.println("After removing duplicates ::"+pers.getName());
- }
- List<Person> personList2 = new ArrayList<Person>();
- personList2.addAll(personSet);
- System.out.println("size ::"+personList2.size());
- for (int i = 0; i < personList2.size(); i++) {
- System.out.println("value ::"+personList2.get(i).getName());
- }
- }
- }
Output :
Before removing duplicates ::amazon
Before removing duplicates ::amazon
Before removing duplicates ::stalin
Before removing duplicates ::stalin
After removing duplicates ::stalin
After removing duplicates ::amazon
size ::2
value ::stalin
value ::amazon
Before removing duplicates ::amazon
Before removing duplicates ::stalin
Before removing duplicates ::stalin
After removing duplicates ::stalin
After removing duplicates ::amazon
size ::2
value ::stalin
value ::amazon
No comments:
Post a Comment