JAVA Zapamiętywanie ostatnich operacji

0

Witam. Mam problem odnośnie zadań z tej strony :
https://inf.ug.edu.pl/~pmp/Z/Oblab2/Konto/konto1.html
O ile pierwsze napisałem , o tyle na drugie nie mam żadnego pomysłu jak napisać strukturę do zapamiętywania operacji?
Kod zadania pierwszego :

 
class Konto {
	private float stan;
	private String wlasciciel;
  void operacja(float ile){ 
	  stan=stan+ile;
	  }
  void przelej(float ile, Konto dokad){
      dokad.operacja(ile); 
  }
  static void przelej(Konto skad, Konto dokad, float ile){
	  dokad.operacja(ile); 
	  skad.operacja(-ile);
  }
  public String toString(){ 
	  return wlasciciel + " Stan konta wynosi :" + stan; 
	  }
  Konto(String w, float stan){ 
	  wlasciciel=w; 
	  this.stan=stan; 
	  } //this - dlatego, że mamy zmienne tej samej nazwy co konstruktory
}
class TestKonta{
  public static void main(String[] a){

   Konto k = new Konto("Konto 1",100);
   Konto l = new Konto("Konto 2",2300);
   Konto m = new Konto("Konto 3",4400);
   Konto n = new Konto("Konto 4",300);
   System.out.println("Konto 1 przed operacją");
   System.out.println(k);
   System.out.println("Konto 1 po operacji");
   k.operacja(-200);
   System.out.println(k);
   System.out.println("////////////////////");
   System.out.println("Konto 2 przed przelewem");
   System.out.println(l);
   System.out.println("Konto 2 po przelewie");
   l.przelej(500, l);
   System.out.println(l);
   System.out.println("////////////////////");
   System.out.println("Konto 3 przed przelewem z konta 4");
   System.out.println(m);
   System.out.println("Konto 3 po przelewie z konta 4");
   Konto.przelej(n, m, 250);
   System.out.println(m);
  }
}
2

Memento pattern, undo/redo poprzez Command Pattern

0

Poproś o pomoc prowadzącego Twoje ćwiczenia :)

0

Prowadzący to za przeproszeniem debil , który nie potrafi wytłumaczyć nawet prostych zagadnień z javy, więc niestety nie mogę się do niego udać :/.

Co do memento pattern , nic mi to nie mówi a wyszukiwanie w google nie wiele mi powiedziało jak go używać. Zastanawiam się jak zrobić to przez strukturę i tablicę ?

0

stworz sobie tablice 5 elementowa. Niech to bedzie tablica stringow. W metodzie operacja sprawdzaj czy twoja tablica ma jakis element ktory jest nullem, jezeli tak to zapisz dane do tego elementu tej tablicy. Jezeli tablica jest cala zapelniona, to przepisz ja (od elementu z indeksem 1 do indeksu 4 ) do nowej tablicy i dodaj na koniec jeden element :)

1

Ale po co tak motać? Przecież w javie masz całą gamę już gotowych struktur do wykorzystania w tym przypadku.
Np. Bierzesz, dla wygody, jakąś kolejkę (cokolwiek co implementuje java.util.Queue). Kolejne operacje dodajesz przez add(), jak przekroczy 5 elementów (size()) to usuwasz najstarszy wpis przez remove(). Wyświetlasz używając standardowo toString().

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