Konstruktor kopiujacy

0

Witam. Mam pytanie. Mianowicie w klasie Obraz posiadam prywatne pole rozmiar oraz List trojkat typu ArrayList. Wiem jak stworzyć konstruktor kopiujacy dla stałych ale nie mam zielonego pojęcia, jak się odwołać do tablicy.

public Obraz(Obraz o){
rozmiar=o.rozmiar;
for(int i=0;i<trojkat.size();i++)
trojkat.get(i)=o.trojkat.get(i);}

Opcja przedstawiona powyżej nie działa. Prosiłbym o szybką odpowiedz. Z góry dziekuje :)

0

Zamień trojkat.size() na o.trojkat.size(), bo potrzebna jest Ci liczba elementów listy z obiektu, który kopiujesz.
Oprócz tego zamień

trojkat.get(i)=o.trojkat.get(i);

na

trojkat.add(o.trojkat.get(i));

O to chodzi?

0

Jeżeli potrzebujesz tylko płytkiej kopii wystarczy zrobić

this.trojkat = new ArrayList(o.trojkat)

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