Dalam suatu kasus, kadang array yang sudah dideklarasi dan ditentukan jumlah elemennya, tidaklah cukup untuk menampung nilai atau data. Biasanya kita akan mendeklarasi ulang dan menambah jumlah elemen arraynya agar dapat menampung nilai atau data lebih besar. Perhatikan contoh di bawah ini :
public class CobaArray {
public static void main(String[] args) {
int[] angka = new int[2]; // deklarasi array awal
angka[0]=10;
angka[1]=20;
angka = new int[4]; // deklarasi ulang array
angka[2]=13;
angka[3]=14;
for (int i = 0; i < angka.length; i++) {
System.out.println(angka[i]);
}
}
}
Jika program di atas dieksekusi maka akan menampilkan nilai :
0
0
13
14
Jadi nilai 10 dan 20 yang telah disimpan sebelum perintah deklarasi ulang, ternyata hilang!!!
Solusi agar nilai-nilai sebelum perintah deklarasi ulang array tidak hilang, kita dapat mempergunakan variabel array sementara (temporary) untuk menyimpan nilai-nilai sebelum perintah deklarasi ulang array. Kemudian setelah array dideklarasi ulang, nilai-nilai yang telah disimpan di variabel array sementara, di-copy ke array yang telah dideklarasi ulang. Berikut contoh programnya :
Maka hasil dari program di atas adalah :
public class CobaArray {
public static void main(String[] args) {
int[] angka = new int[2]; // deklarasi array awal
angka[0]=10;
angka[1]=20;
int[] temp = new int[angka.length]; // var. array sementara
System.arraycopy(angka,0,temp,0,angka.length); // copy array
angka = new int[4]; // deklarasi ulang array
System.arraycopy(temp,0,angka,0,temp.length); // copy array
angka[2]=13;
angka[3]=14;
for (int i = 0; i < angka.length; i++) {
System.out.println(angka[i]);
}
}
}
10
20
13
14
Update Contact :
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email : Fajarudinsidik@gmail.com
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email: Fajarudinsidik@gmail.com
atau Kirimkan Private messanger melalui email dengan klik tombol order dibawah ini :