Buenas, queria saber si estaba bien implementado este ejercicio
public class TimeSetImpl<T> implements TimeSet<T>{
//Si el elemento a agregar ya existía, se modifica el horario que tenía
// * anteriormente.
private final Map<T, LocalTime> map = new HashMap<>();
@Override
public void add(T elem, int hours, int minutes) {
map.put(elem, LocalTime.of(hours, minutes));
}
@Override
public void remove(T elem) {
map.remove(elem);
}
@Override
public int size() {
return map.size();
}
@Override
public boolean contains(T elem) {
return map.containsKey(elem);
}
@Override
public Set<T> retrieve(int hoursFrom, int minutesFrom, int hoursTo, int minutesTo) {
LocalTime from = LocalTime.of(hoursFrom, minutesFrom);
LocalTime to = LocalTime.of(hoursTo, minutesTo);
Set<T> toReturn = new HashSet<>();
for(T elem : map.keySet()){
if(from.isBefore(map.get(elem)) && to.isAfter(map.get(elem))
|| to.equals(map.get(elem)) || from.equals(map.get(elem))){
toReturn.add(elem);
}
}
return toReturn;
}
}
Buenas, queria saber si estaba bien implementado este ejercicio