Originariamente inviato da peruzzo
Tutte le volte che devo creare la copia di un vettore in java scrivo un ciclo for altrimenti se scrivo a=b e modifico la copia b anche a risulta automaticamente modificato. C'é un metodo di java che consente la copia senza dover scrivere sempre il ciclo for o far un metodo apposito?
Scommetto che esiste!
Scommessa (quasi) vinta, se per "vettore" intendi un array: System.arraycopy()
codice:
int[] arrOrigine = {1, 2, 3, 4};
int[] arrDestinazione = new int[4];
System.arraycopy(arrOrigine, 0, arrDestinazione, 0, arrOrigine.length);
Ho scritto "quasi" perchè la copia di un array dipende sempre dal tipo di array e dal tipo di copia che si intende fare. Questo metodo effettua una copia di un qualunque tipo di array, ma per gli array di oggetti effettua una copia dei riferimenti, non una deep-copy.
Ciao.