gpt4 book ai didi

java - 如何遍历一个集合并将每次的结果加在一起?

转载 作者:行者123 更新时间:2023-11-29 04:09:15 25 4
gpt4 key购买 nike

我试图遍历一组事件并获取每个事件的开始和结束时间,并计算每个事件的持续时间。然后我需要将所有持续时间加在一起以获得总时间。我使用的代码只是获取最后一个事件的持续时间,并没有将它们全部加在一起。我不太确定我使用的循环是否正确?

Set<Event> events = eventService.findByUsers(user);
Long duration = null;

for(Event event : events)
{
LocalTime startTime = event.getStart().toLocalTime();
LocalTime endTime = event.getEnd().toLocalTime();

duration = Duration.between(startTime, endTime).toHours();
System.out.println("The time bewtween shifts is " + duration);

Long totalTime = duration += duration;

}

任何帮助将不胜感激

最佳答案

totalTime 变量的声明移到循环外:

Set<Event> events = eventService.findByUsers(user);
long totalTime = 0;
for(Event event : events)
{
LocalTime startTime = event.getStart().toLocalTime();
LocalTime endTime = event.getEnd().toLocalTime();

long duration = Duration.between(startTime, endTime).toHours();
System.out.println("The time bewtween shifts is " + duration);

totalTime += duration;
}

使用您当前的方法,totalTime 变量会在每次迭代时再次初始化,因此最后将仅包含最后一个持续时间。

关于java - 如何遍历一个集合并将每次的结果加在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56056611/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com