Как рассчитать объекты в массиве, избегая дубликатов? - PullRequest
0 голосов
/ 17 октября 2019

У меня есть массив с объектами событий. В каждом объекте у меня есть Child с childId, startDate и endDate. Думаю, у меня есть массив из 100 событий, но 28 из них имеют дубликаты startDates. Я хотел бы посчитать количество событий в день, а не количество всех событий.

List<Event> familysEvents = new ArrayList<Event>();
    // List of children
    Map<String,ActualChrChild> children = new HashMap<String,ActualChrChild>();

    for (Child child : response.getChildren()) {
        children.put(child.getId(),child);

    }


    for (RespEvent rEvent : response.getEvents()) {

    Event event = new Event();    

    event.setChildId(rEvent.getChildId());
    event.setFamilyId(rEvent.getFamilyId());
    event.setDate(rEvent.getStartTime().toLocalDate());
    ...

Теперь у меня есть массив, полный событий, и легко получить количество всех событий с помощью size (), но я хотел бы знать события по определенным датам. Поэтому, если 17.10.2019 для одного и того же childId существует три события, я бы хотел посчитать его только один раз, а не три раза. Поэтому я хотел бы получить количество массивов для конкретного ребенка без нескольких событий на определенную дату. Я хотел бы знать, сколько событий в этом списке, так что если childID = 123 имеет три события на дату 17.10.2019, то оно рассчитывается только один раз, а не три раза.

Я думаю, что это возможно, ноэто идет по моей голове, что-то о клонированных массивах, может быть, и удаление из другого. Спасибо за помощь!

...