В Java 8:
List deduped = list.stream().distinct().collect(Collectors.toList());
Обратите внимание, что контракт hashCode-equals для членов списка должен соблюдаться для правильной работы фильтрации.