Mam tablicę
int[] a = {1, 2, 3}
int[] b = a;
a[0] = 4;
Po wykonaniu takiego kodu obie tablice są takie same, więc mój wniosek jest taki, że operator przypisania nie kopiuje tablicy (od tego jest Arrays.copyOf), tylko przypisuje b adres tablicy a.
No ok, więc dlaczego taki kod już pozwala zamienić wiersze w tablicy dwuwymiarowej?:
int[][] a = { {1, 2}, {3, 4} };
int[] temp = a[0];
a[0] = a[1];
a[1] = temp;
Dlaczego linia
a[0]=a[1]
nie powoduje, że temp=a[1]
?