Я хочу создать интервал между началом недели и концом текущей недели.Jodatime начало дня и конца дня
У меня есть следующий код, заимствованный из this answer:
private LocalDateTime calcNextSunday(LocalDateTime d) {
if (d.getDayOfWeek() > DateTimeConstants.SUNDAY) {
d = d.plusWeeks(1);
}
return d.withDayOfWeek(DateTimeConstants.SUNDAY);
}
private LocalDateTime calcPreviousMonday(LocalDateTime d) {
if (d.getDayOfWeek() < DateTimeConstants.MONDAY) {
d = d.minusWeeks(1);
}
return d.withDayOfWeek(DateTimeConstants.MONDAY);
}
Но теперь я хочу, чтобы понедельник LocalDateTime
быть в 00:00:00, а воскресенье LocalDateTime
в 23:59:59. Как мне это сделать?
'setXxx' по соглашению не имеет тип возвращаемого значения в Java, так что не допустит сцепления. Это здесь напоминает шаблон построителя (который изначально не работал бы с существующим объектом). –
Действительно. Это позволяет вам объединять вызовы вместе, а не иметь их всех на разных линиях и получать все преимущества неизменяемых объектов. –
Я думаю, что «шаблон» называется «Свободный интерфейс» http://martinfowler.com/bliki/FluentInterface.html - дает много преимуществ в читаемости и ясности, на мой взгляд. –