Belajar Java – Array

Array adalah kumpulan data yang memiliki tipe data dan jumlah elemen yang tetap (tidak bisa ditambah/dikurangi). Array pada Java adalah sebuah object, maka harus dideklarasikan menggunakan kata kunci new. Tiap data pada array disebut element, dan masing-masing element dapat diakses menggunakan index yang berupa angka. Index dimulai dari 0 sampai jumlah element – 1.

Array Java

Contoh untuk mendeklarasikan array sesuai gambar di atas adalah

char [] arrayHuruf = new char[10];

Sedangkan cara untuk menginisialisasinya adalah sebagai berikut

arrayHuruf[0] = 'A';
arrayHuruf[1] = 'B';
//dst

Bisa menggunakan perulangan untuk menginisialisasi array

for (int i = 0; i < 10; i ++) {

  arrayHuruf[i] = (char) ('A' + i);
}

Array arrayHuruf akan berisi 10 karakter, yaitu ‘A’ sampai ‘J’ secara berurutan. Alternatif lain untuk menginisialisasi array, dapat menggunakan syntax sebagai berikut

char[] arrayHuruf = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J' };

Jumlah element diketahui dari banyaknya nilai di antara tanda ‘{‘ dan ‘}’.

Kita juga dapat mendeklarasikan array dari array atau lebih dikenal sebagai array multidimensi dengan cara seperti berikut char[][] namaArray = new char[10][2] atau char[][] namaArray = new char[10][], tapi tidak boleh seperti ini char[][] namaArray = new char[][2]. Dalam bahasa Java, pengertian array lebih sederhana daripada pada bahasa C, jadi jumlah element pada baris berikutnya jumlahnya boleh bervariasi (tidak harus sama dengan baris pertama).

char[][] hurufAngka = new char[2][];
hurufAngka[0] = new char[2]; // array index [0][0] sampai [0][1]
hurufAngka[1] = new char[1]; // hanya ada array index [1][0]

Array multidimensi juga dapat langsung dideklarasikan dan diinisialisasi seperti berikut

char[][] hurufAngka = {
  { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J' },
  { '1', '2', '3', '4', '5'}
};

Pada contoh untuk menginisialisasi di atas, kita menggunakan bentuk perulangan for (nilai_awal; nilai_akhir; penambahan/pengurangan), jadi jumlah element-nya harus diketahui. Bagaimana jika jumlah element tidak diketahui? Misalkan kita ingin mencetak array yang berisi huruf-huruf yang tidak diketahui secara pasti jumlahnya. Gunakan enhanced for yang penggunaannya mirip dengan foreach pada PHP.

char[] arrayHuruf = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J' };

for ( char huruf : arrayHuruf ) {
  System.out.println( huruf );
}

Kita juga bisa menggunakan built-in property length untuk mengetahui jumlah element-nya.

for (int i=0; i<arrayHuruf.length; i++)
  System.out.println( arrayHuruf[i] );

Untuk menyalin array yang satu ke yang lainnya, bisa menggunakan method arraycopy yang ada pada class System.

public static void arraycopy(Object arraySumber, int indexSumber, Object arraytujuan, int indexTujuan, int panjangElement)

Contoh penggunaannya adalah seperti berikut

int[] arraySumber = { 1, 2, 3, 4, 5 };
int[] arrayTujuan = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 };

System.arraycopy (arraySumber, 0, arrayTujuan, 0, arraySumber.length);
		
for (int item : arrayTujuan)
  System.out.println ( item );

Tambahan:
Meskipun jumlah element pada array tidak bisa ditambah/dikurangi, kita bisa menciptakan array baru dari array yang sudah ada. Namun tentu saja, nilai yang sudah ada akan hilang.

int [] array = new int[5];
array = new int[10];

About Sibudi

Ubuntu user | Loves books | Blogger | Web Developer | Learn PHP, JavaScript, Ruby & Python the hard way

19. August 2012 by Sibudi
Categories: Java | Tags: , , | 4 comments

Comments (4)

  1. detail sekali penjelasannya, sangat membantu yang lai belajar seperti saya
    terima kasih banyak sudah mau share

  2. thnk gan nih ane lagi nyari materi tentang array sangat bermanfaat bagi ane

  3. Min misalkan supaya minta inputan banyaknya array, trus masukan array ke 0, 1, 2, dst, gimana??

Leave a Reply

Required fields are marked *