Quote Originariamente inviata da jimbo0 Visualizza il messaggio
mi spieghi con un piccolo esempio questo passaggio? uno stesso array posso passarlo in due modi?
Non ci sono 2 modi .... solo 1!

codice:
public void chiamante() {
    int[] arr = { 1, 2, 3 };
    chiamato(arr);
}

public void chiamato(int[] interi) {
   ....
}

In chiamante, arr ha un valore, quale esso sia non ha molta importanza (per il programmatore). Quando chiamato viene invocato, viene passata una copia del valore. Ovvero anche il parametro interi ha lo stesso valore contenuto in arr. Ma sono 2 variabili distinte, questo è il senso della "copia". Se assegni un altro reference ad 'interi', non cambi il valore di 'arr' in chiamante.