Wątek przeniesiony 2014-11-26 08:59 z Java przez bogdans.

Kopiowanie elementów tablicy dwuwymiarowej (wartości a nie referencji)

0

Witam.
Mam problem ze skopiowaniem tablicy dwuwymiarowej w Javie.
Tworze dwie tablice:

int[][] tab1 = int new[2][2];
int[][] tab2 = int new[2][2]; 

Następnie tab1 wypełniam jedynkami i korzystam z funkcji:
System.arraycopy(tab1, 0, tab2, 0, 2);
Teraz obie tablicę są wypełnione jedynkami. Problem pojawia się gdy przypiszę np. tab2[0][0]=7. W tej chwili element tablicy tab1[0][0] również zmienia się na 7 a ja chciałbym żeby ta tablica pozostała jaka była (dokładnie chce żeby te dwie tablice były od siebie niezależne). Czy ktoś może mi powiedzieć w jaki sposób powinienem kopiować tablicę aby nie kopiować referencji a jedynie wartości elementów tablicy ?

0

Np. przy pomocy zagnieżdżonej pętli for wyraz po wyrazie.

0

Napisałem funkcję która to robi ale nie zauważyłem, że inna funkcja którą wywołuje psuje mi to kopiowanie i myślałem, że funkcja kopiująca z pętlą for też jest zła... Dzięki za szybką pomoc :)
Temat do usunięcia.

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