Zmiana czasu

0

Witam, jestem początkujący więc prosze o wyrozumiałość:)
Robię następujące zadanie, muszę utworzyć klasę Clock, w mainie tworzę kilka obietków tej klasy. Tworzę również kolekcję LinkedList do przechowywania zegarów i dodaję kilka utworzonych obiektów klasy Clock. Następnie używając pętli for muszę przesunąć każdy zegar o 1 minutę.
Stworzyłem klasę Clock, utworzyłem kolekcję i dodałem do niej zegary, ale nie wiem jak przesunąć czas. Kombinowałem z opcją plus.Minutes() ale nie potrafiłem się z tym uporać, może ktoś mi doradzić jak najlepiej to zrobić?

class Clock {
        LocalTime watchTime;
        
        public Clock(int hours, int minutes, int seconds) {
            this.watchTime = LocalTime.of(hours, minutes, seconds);   
        }
        public LocalTime getWatchTime() {
            return watchTime;   
        }
        public String toString() {
            return "Time: " + watchTime;   
        }
    }      
        
class Program {
    public static void main (String[] args) {
    
    Clock now1 = new Clock(11, 40, 00);
    Clock now2 = new Clock(23, 20, 00);
    Clock now3 = new Clock(9, 30, 00);
    Clock now4 = new Clock(18, 50, 00);
    
    LinkedList<Clock> watch = new LinkedList<Clock>();
    watch.add(now1);
    watch.add(now2);
    watch.add(now3);
    watch.add(now4);
    
    System.out.println(now1);
    System.out.println(now2);
    System.out.println(now3);
    System.out.println(now4);
    
   }
}
2

Z pętlą chyba sobie poradzisz.
Co do dodania czasu: LocalTime jest immutable więc nie można zmienić wartości tego obiektu. Można jednak nadpisać cały obiekt:

this.watchTime = this.watchTime.plusMinutes(1);
0
Delor napisał(a):

Z pętlą chyba sobie poradzisz.
Co do dodania czasu: LocalTime jest immutable więc nie można zmienić wartości tego obiektu. Można jednak nadpisać cały obiekt:

this.watchTime = this.watchTime.plusMinutes(1);

Dzięki, już śmiga :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1