Remove duplicates from a List Tag(s): Language
Order is not preserved
import java.util.HashSet;
import java.util.ArrayList;
import java.util.List;
public class ListUtils {
private ListUtils() {}
public static <T> void removeDuplicate(List <T> list) {
HashSet <T> h = new HashSet<T>(list);
list.clear();
list.addAll(h);
}
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("Bart");
list.add("Lisa");
list.add("Marge");
list.add("Marge");
list.add("Barney");
list.add("Homer");
list.add("Maggie");
System.out.println(list);
// output : [Bart, Lisa, Marge, Marge, Barney, Homer, Maggie]
ListUtils.removeDuplicate(list);
System.out.println(list);
// output : [Bart, Lisa, Maggie, Homer, Barney, Marge]
}
}
import java.util.HashSet;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
public class ListUtils {
private ListUtils() {}
@SuppressWarnings("unchecked")
public static <T> void removeDuplicate(List <T> list) {
Set <T> set = new HashSet <T>();
List <T> newList = new ArrayList <T>();
for (Iterator <T>iter = list.iterator(); iter.hasNext(); ) {
Object element = iter.next();
if (set.add((T) element))
newList.add((T) element);
}
list.clear();
list.addAll(newList);
}
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("Bart");
list.add("Lisa");
list.add("Marge");
list.add("Marge");
list.add("Barney");
list.add("Homer");
list.add("Maggie");
System.out.println(list);
// output : [Bart, Lisa, Marge, Marge, Barney, Homer, Maggie]
ListUtils.removeDuplicate(list);
System.out.println(list);
// output : [Bart, Lisa, Marge, Barney, Homer, Maggie]
}
}
mail_outline
Send comment, question or suggestion to howto@rgagnon.com
Send comment, question or suggestion to howto@rgagnon.com