Я пытаюсь удалить дубликаты из списка объектов, добавив все объекты в списке в набор и добавив данные обратно в список.Мой код выглядит следующим образом:
List<LocationHourListHB> locationHoursList = new ArrayList<LocationHourListHB>();
Set<LocationHourListHB> locationHoursSet = new LinkedHashSet<LocationHourListHB>();
locationHoursSet.addAll(locationHoursList);
locationHoursList.clear();
locationHoursList.addAll(locationHoursSet);
У меня есть LocationHourListHB
следующим образом:
public class LocationHourListHB {
private String startTIme;
private String endTime;
public String getStartTIme() {
return startTIme;
}
public void setStartTIme(String startTIme) {
this.startTIme = startTIme;
}
public String getEndTime() {
return endTime;
}
public void setEndTime(String endTime) {
this.endTime = endTime;
}
@Override
public boolean equals(Object o) {
if (o == this) return true;
if (!(o instanceof LocationHourDay)) {
return false;
}
LocationHourListHB locationHour = (LocationHourListHB) o;
return locationHour.startTIme.equalsIgnoreCase(startTIme) &&
locationHour.endTime.equalsIgnoreCase(endTime);
}
//Idea from effective Java : Item 9
@Override
public int hashCode() {
int result = 17;
result = 31 * result + startTIme.hashCode();
result = 31 * result + endTime.hashCode();
return result;
}
}
Я добавил методы переопределения в equals () и hashCode (), но мой списоквсе еще содержит дубликаты.Есть ли здесь что-то, чего мне не хватает.