728x90
반응형
LocalTime 평균 구하기
*parameter는 상황에 따라 변경해서 사용(LocalTime t1, LocalTime...ts)
/**
* LocalTime AVG
*
* @param List<LocalTime>
* @return AVG LocalTime
*/
public static LocalTime getLocalTimeAVG(List<LocalTime> list) {
LocalTime result = LocalTime.of(0, 0, 0);
if (!list.isEmpty()) {
long nanoSum = 0L;
for (LocalTime time : list) {
nanoSum += time.toNanoOfDay();
}
result = LocalTime.ofNanoOfDay(nanoSum / (list.size()));
}
return result;
}
*개선한 버전
/**
* LocalTime AVG
*
* @param List<LocalTime>
* @return AVG LocalTime
*/
public static LocalTime getLocalTimeAVG(List<LocalTime> list) {
if (list.isEmpty()) {
return LocalTime.of(0, 0, 0);
}
long nanoSum = list.stream()
.mapToLong(time -> time.toNanoOfDay())
.sum();
return LocalTime.ofNanoOfDay(nanoSum / list.size());
}
728x90
728x90
'▶ Back-End > Java' 카테고리의 다른 글
Objcet to String (0) | 2023.09.21 |
---|---|
@Value 사용법 (0) | 2023.09.21 |
String to LocalTime (0) | 2023.09.21 |
String to LocalDate (0) | 2023.09.21 |
Ramdom LocalTime 생성 (0) | 2023.09.21 |
댓글