Laman

Contoh Array Dinamis


Array merupakan sebuah deret atau baris yang memungkinkan untuk sebuah tipe data untuk menyimpan banyak nilai. Nilai array bisa merupakan nilai yang statis tetapi ada juga yang merupakan nilai dinamis. Dengan menggunakan nilai dinamis maka panjang array bisa disesuaikan dengan kebutuhan kita. Contuh berikut ini merupakan contoh dari penerapan array secara dinamis
public class ArrayDinamisInt {
private int[] data; // Array untuk menyimpan data
public DynamicArrayOfInt() {
// Konstruktor.
data = new int[1]; // Array akan bertambah besar jika diperlukan
}

public int get(int posisi) {
// Ambil nilai dari posisi tertentu di dalam array.
// Karena semua posisi di dalam array adalah nol, maka
// jika posisi tertentu di luar data array, nilai 0 akan dikembalikan
if (posisi >= data.length)
return 0;
else
return data[posisi];
}

public void put(int posisi, int nilai) {
// Simpan nilai ke posisi yang ditentukan di dalam array
// Data array tersebut akan bertambah besar jika diperlukan

if (posisi >= data.length) {
// Posisi yang ditentukan berada di luar array data
// Besarkan ukuran array 2x lipat. Atau jika ukurannya masih
// terlalu kecil, buat ukurannya sebesar 2*posisi

int ukuranBaru = 2 * data.length;
if (posisi >= ukuranBaru)
ukuranBaru = 2 * posisi;
int[] dataBaru = new int[ukuranBaru];
System.arraycopy(data, 0, dataBaru, 0, data.length);
data = dataBaru;

// Perintah berikut hanya untuk demonstrasi
System.out.println("Ukuran array dinamis diperbesar menjadi "
+ ukuranBaru);
}
data[posisi] = nilai;
}

} // akhir kelas ArrayDinamisInt

Tidak ada komentar:

Posting Komentar