Desidero creare un intervallo tra l'inizio della settimana e la fine della settimana corrente.Inizio giorno Jodatime e fine giornata
Ho il codice seguente, preso in prestito da 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);
}
Ma ora voglio il Lunedi LocalDateTime
di essere alle 00:00:00, e la Domenica LocalDateTime
alle 23:59:59. Come lo farei?
'setXxx' per convenzione ha alcun tipo di ritorno in Java quindi non consentirebbe concatenamento. Questo qui ricorda il modello di builder (che originariamente non avrebbe funzionato su un oggetto esistente). –
Infatti. Questo ti consente di mettere insieme le chiamate, anziché averle tutte su linee diverse, e ti offre tutti i vantaggi degli oggetti immutabili. –
Penso che il "pattern" sia chiamato "Fluent interface" http://martinfowler.com/bliki/FluentInterface.html - a mio parere offre molti vantaggi in termini di leggibilità e chiarezza. –