java - 如何计算数组中的对象避免重复?
问题描述
我有一个包含事件对象的数组。在每个对象中,我都有一个具有 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() 很容易获得所有事件的数量,但我想知道特定日期的事件。因此,如果在 2019 年 10 月 17 日有相同 childId 的三个事件,我只想计算一次,而不是三次。所以我想在特定日期获得没有多个事件的特定孩子的数组数量。我想知道该列表中有多少事件,因此如果 childID= 123 在 2019 年 10 月 17 日有三个事件,则只计算一次,而不是三次。
我认为这是可能的,但它超出了我的想象,可能是关于克隆数组的一些内容并从另一个数组中删除。感谢您的帮助!
解决方案
推荐阅读
- android - Flutter 将视频控制器和播放器添加到容器中
- javascript - setOption startParam 在 fullcalendar v5 中的工作很奇怪
- android - 如果 Kotlin 中的任何字段为空,则禁用按钮功能
- c++ - Boost::Log Symbol 在 macOS 上找不到架构
- r - Getting Leaflet to work with Datatable selection in R shiny
- c++ - C++ concept to enforce field of particular type
- google-chrome - Properly using chrome.tabCapture in a manifest v3 extension
- .net - 在没有 SSL 的 docker 上运行 .NET core grpc
- python - 嵌套python字典中的项目总和
- python - pip install --upgrade 给出相同的警告