Home » Java » Array di Java: Penjelasan – Contoh dan Kegunaannya

Array di Java: Penjelasan – Contoh dan Kegunaannya

by Bagus Dharma Iswara
by Bagus Dharma Iswara

Apa itu Array ?

Array digunakan untuk menyimpan beberapa nilai dalam satu variabel, bukan mendeklarasikan variabel terpisah untuk setiap nilai. Untuk mendeklarasikan sebuah array, tentukan tipe variabel dengan tanda kurung siku. Biasanya, array adalah kumpulan elemen sejenis yang memiliki lokasi memori yang berdekatan.

Hampir sama dengan array di javascript, Array Java adalah objek yang berisi elemen tipe data serupa. Selain itu, elemen array disimpan di lokasi memori yang berdekatan.

Ini adalah struktur data tempat kami menyimpan elemen serupa. Kita hanya dapat menyimpan satu set elemen tetap dalam larik Java. Array di Java berbasis indeks, elemen pertama dari array disimpan di indeks ke-0, elemen ke-2 disimpan di indeks ke-1 dan seterusnya.

Tidak seperti C / C ++, kita bisa mendapatkan panjang array menggunakan anggota panjang. Di C / C ++, kita perlu menggunakan operator sizeof.

Di Java, array adalah objek dari kelas yang dibuat secara dinamis. Array Java mewarisi kelas Object, dan mengimplementasikan antarmuka Serializable serta Cloneable.

Kita bisa menyimpan nilai atau objek primitif dalam sebuah array di Java. Seperti C / C ++, kita juga dapat membuat array dimentional atau multidimentional di Java. Selain itu, Java menyediakan fitur array anonim yang tidak tersedia di C / C ++.

Java menyediakan struktur data, larik, yang menyimpan kumpulan elemen berurutan berukuran tetap dari tipe yang sama.

Sebuah array digunakan untuk menyimpan sekumpulan data, tetapi seringkali lebih berguna untuk menganggap array sebagai kumpulan variabel dengan tipe yang sama.

Alih-alih mendeklarasikan variabel individual, seperti bilangan0, bilangan1, …, dan bilangan99, Anda mendeklarasikan satu variabel larik seperti bilangan dan menggunakan bilangan [0], bilangan [1], dan …, bilangan [99] untuk mewakili variabel individu. Tutorial ini memperkenalkan cara mendeklarasikan variabel array, membuat array, dan memproses array menggunakan variabel yang diindeks

Deklarasi Array Pada Java

Untuk menggunakan array dalam program, Anda harus mendeklarasikan variabel untuk mereferensikan array, dan Anda harus menentukan jenis array yang dapat direferensikan oleh variabel. Berikut adalah sintaks untuk mendeklarasikan variabel array

dataType[] arrayRefVar;   // preferred way.
or
dataType arrayRefVar[];  // works but not preferred way.

// contoh lainnya adalah 

double[] myList;   // preferred way.
or
double myList[];   // works but not preferred way.

Catatan: style dataType [] arrayRefVar lebih disukai. Style dataType arrayRefVar [] berasal dari bahasa C / C ++ dan diadopsi di Java untuk mengakomodasi pemrogram C / C ++.

Membuat Array pada Java

Anda dapat membuat array dengan menggunakan operator baru dengan sintaks berikut

String[] cars;

Kami sekarang telah mendeklarasikan variabel yang menampung array string. Untuk memasukkan nilai ke dalamnya, kita dapat menggunakan literal array – tempatkan nilai dalam daftar yang dipisahkan koma, di dalam tanda kurung kurawal.

String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};

Untuk membuat array bilangan bulat, Anda bisa menulis seperti ini

int[] myNum = {10, 20, 30, 40};

Kemudian kita dapat membuat contoh sintaks lain dengan cara

arrayRefVar = new dataType[arraySize];

Pernyataan di atas melakukan dua hal yaitu

  1. Ini membuat sebuah array menggunakan dataType [arraySize] baru.
  2. Ini memberikan referensi dari array yang baru dibuat ke variabel arrayRefVar.

Mendeklarasikan variabel array, membuat array, dan menetapkan referensi array ke variabel dapat digabungkan dalam satu pernyataan, seperti yang ditunjukkan di bawah ini

dataType[] arrayRefVar = new dataType[arraySize];

Alternatifnya, Anda dapat membuat array sebagai berikut

dataType[] arrayRefVar = {value0, value1, ..., valuek};

Elemen array diakses melalui indeks. Indeks array berbasis 0; artinya, mereka mulai dari 0 hingga arrayRefVar.length-1. Pernyataan berikut mendeklarasikan variabel array, myList, membuat array 10 elemen tipe ganda dan memberikan referensinya ke myList

double[] myList = new double[10];

Gambar diatas mewakili array myList. Di sini, myList memiliki sepuluh nilai ganda dan indeksnya dari 0 hingga 9.

Keuntungan Menggunakan Array

  1. Optimasi Kode yaitu Itu membuat kode dioptimalkan, kita dapat mengambil atau mengurutkan data secara efisien.
  2. Random access yaitu kita bisa mendapatkan data apa pun yang terletak di posisi indeks.

Kerugian Menggunakan Array

  1. Ukuran yang terbatas yaitu kita hanya dapat menyimpan ukuran tetap elemen dalam larik. Ukurannya tidak bertambah saat runtime. Untuk mengatasi masalah ini, framework kumpulan digunakan di Java yang tumbuh secara otomatis.

Deklarasi, Instansiasi dan Inisialisasi Array pada Java

Saat memproses elemen array, kita sering menggunakan for loop atau foreach loop karena semua elemen dalam array memiliki tipe yang sama dan ukuran array diketahui. Berikut adalah contoh lengkap yang menunjukkan cara membuat, menginisialisasi, dan memproses array

Java

Ini akan menghasilkan hasil sebagai berikut

1.9
2.9
3.4
3.5
Total is 11.7
Max is 3.5

Contoh lain kita juga dapat mengakses elemen array dengan mengacu pada nomor indeks. Pernyataan ini mengakses nilai elemen pertama di mobil

String [] mobil = {"Volvo", "BMW", "Ford", "Mazda"};
System.out.println (mobil [0]);
// Mengeluarkan Volvo
// Catatan: Indeks array dimulai dengan 0: [0] adalah elemen pertama. [1] adalah elemen kedua dan seterusnya.

Kemudian Contoh lainnya bisa membuat seperti ini

Java

Mengganti Element Array

Untuk mengubah nilai elemen tertentu, lihat nomor indeks contohnya dapat dilihat pada kode berikut

Java

Array Length

Untuk mengetahui berapa banyak elemen yang dimiliki sebuah array, gunakan properti length, contohnya dapat digunakan seperti ini

Java

Looping Array pada Java

Anda dapat melakukan loop melalui elemen array dengan for loop, dan menggunakan properti length untuk menentukan berapa kali loop harus dijalankan. Contoh berikut menampilkan semua elemen dalam array mobil

Java

Looping ForEach

Ada juga loop “for-each”, yang digunakan secara eksklusif untuk melakukan loop melalui elemen dalam array. JDK 1.5 memperkenalkan loop for baru yang dikenal sebagai loop foreach atau loop for yang disempurnakan, yang memungkinkan Anda melintasi larik lengkap secara berurutan tanpa menggunakan variabel indeks. Kita dapat membuat looping dengan menggunakan sintaks berikut

for (type variable : arrayname) {
  ...
}

Contoh berikut mengeluarkan semua elemen dalam array mobil, menggunakan loop “for each”

Java

Contoh di atas dapat dibaca seperti ini: untuk setiap elemen String (disebut i – seperti dalam indeks) di mobil, cetak nilai i. Jika Anda membandingkan loop for dan for-each, Anda akan melihat bahwa metode for-each lebih mudah ditulis, tidak memerlukan penghitung (menggunakan properti length), dan lebih mudah dibaca.

Contoh lainnya dari kode berikut menampilkan semua elemen dalam array myList

Java

kemudian akan menghasilkan output

1.9
2.9
3.4
3.5

Contoh Lainnya bisa dengan membuat seperti ini

Java

Passing Array ke Methods

Sama seperti Anda bisa meneruskan nilai tipe primitif ke metode, Anda juga bisa meneruskan array ke metode. Misalnya, metode berikut menampilkan elemen dalam array int

Java


Anda bisa memanggilnya dengan melewatkan sebuah array. Misalnya, pernyataan berikut memanggil metode printArray untuk menampilkan 3, 1, 2, 6, 4, dan 2

printArray(new int[]{3, 1, 2, 6, 4, 2});

Kita dapat melewatkan array java ke metode sehingga kita dapat menggunakan kembali logika yang sama pada array apa pun. Mari kita lihat contoh sederhana untuk mendapatkan jumlah minimum dari sebuah array menggunakan sebuah metode

Java

Mengembalikan Sebuah Array Dari Methods

Suatu metode juga dapat mengembalikan array. Misalnya, metode berikut mengembalikan array yang merupakan pembalikan array lainnya

Java

Kita juga bisa mengembalikan array dari metode di Java dengan membuat kode berikut

Java

Maka kita dapat memperoleh hasil berikut

10
30
50
90
60

Anonymous Array in Java

Java mendukung fitur array anonim, jadi Anda tidak perlu mendeklarasikan array sambil meneruskan array ke metode. Contohnya dapat dilihat pada kode berikut

Java

Kemudian akan menghasilkan output

10
22
44
66

ArrayIndexOutOfBoundsException pada Java

Java Virtual Machine (JVM) menampilkan ArrayIndexOutOfBoundsException jika panjang array negatif, sama dengan ukuran array atau lebih besar dari ukuran array saat melintasi array. Contoh ini dapat dilihat pada kode berikut

Java

Selanjutnya kita dapat melihat hasil berikut

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
	at TestArrayException.main(TestArrayException.java:5)
50
60
70
80

Kelas Pada Array Java

Kelas java.util.Arrays berisi berbagai metode statis untuk mengurutkan dan mencari array, membandingkan array, dan mengisi elemen array. Metode ini kelebihan beban untuk semua tipe primitif.

  • public static int binarySearch(Object[] a, Object key) yaitu Mencari array tertentu dari Object (Byte, Int, double, dan lainnya.) Untuk nilai yang ditentukan menggunakan algoritma pencarian biner. Larik harus diurutkan sebelum melakukan panggilan ini. Ini mengembalikan indeks dari kunci pencarian, jika itu terdapat dalam daftar; jika tidak, ia mengembalikan (- (titik penyisipan + 1)).
  • public static boolean equals(long[] a, long[] a2) yaitu Mengembalikan nilai benar jika dua array panjang yang ditentukan sama satu sama lain. Dua array dianggap sama jika kedua array berisi jumlah elemen yang sama, dan semua pasangan elemen yang sesuai dalam dua array adalah sama. Ini mengembalikan nilai true jika dua larik sama. Metode yang sama dapat digunakan oleh semua tipe data primitif lainnya (Byte, short, Int, dan lainnya).
  • public static void fill(int[] a, int val) yaitu menetapkan nilai int yang ditentukan ke setiap elemen dari array int yang ditentukan. Metode yang sama dapat digunakan oleh semua tipe data primitif lainnya (Byte, short, Int, dan lainnya).
  • public static void sort(Object[] a) yaitu mengurutkan array objek yang ditentukan ke dalam urutan naik , sesuai dengan urutan alami elemennya. Metode yang sama dapat digunakan oleh semua tipe data primitif lainnya (Byte, short, Int, dan lainnya).

Tipe Array pada Java

Ada dua jenis tipe array pada Java yaitu

  1. Array Dimensi Tunggal (Single Dimensional Array).
  2. Array Multidimensi (MultiDimensional Array).

Single Dimensional Array

Sintaks untuk Menyatakan Array di Java yaitu

dataType[] arr; (or)  
dataType []arr; (or)  
dataType arr[]; 

Instansiasi array pada Java dapat dilakukan dengan

arrayRefVar=new datatype[size];  

Mari kita lihat contoh sederhana dari java array, dimana kita akan mendeklarasikan, membuat instance, menginisialisasi dan melintasi sebuah array. Contoh Programnya pada java ditunjukkan pada kode dibawah

Java

Multidimensional Array

Dalam kasus seperti ini, data disimpan dalam indeks berbasis baris dan kolom (juga dikenal sebagai bentuk matriks). Array multidimensi adalah Array yang berisi satu atau lebih Array. Untuk membuat larik dua dimensi, tambahkan setiap Array dalam kumpulan kurung kurawal miliknya sendiri. Sintaks yang dapat dibuat menggunakan multidimensional arry ini adalah

Sintaks untuk Mendeklarasi Array Multidimensi di Java

dataType[][] arrayRefVar; (or)  
dataType [][]arrayRefVar; (or)  
dataType arrayRefVar[][]; (or)  
dataType []arrayRefVar[];  

Sintaks untuk Instansiasi Array Multidimensi di Java

int[][] arr = new int[3][3];//3 row and 3 column  

Sintaks untuk Inisialisasi Array Multidimensi di Java

arr[0][0]=1;  
arr[0][1]=2;  
arr[0][2]=3;  
arr[1][0]=4;  
arr[1][1]=5;  
arr[1][2]=6;  
arr[2][0]=7;  
arr[2][1]=8;  
arr[2][2]=9; 

Contoh-contoh sederhana pada Multidimensional Array yaitu

int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
int x = myNumbers[1][2];
System.out.println(x); // Outputs 7

myNumbers sekarang menjadi sebuah array dengan dua array sebagai elemennya. Untuk mengakses elemen dari array myNumbers, tentukan dua indeks: satu untuk array, dan satu lagi untuk elemen di dalam array itu. Contoh diatas adalah cara mengakses elemen ketiga (2) di array kedua (1) dari myNumbers. Kita juga dapat menggunakan perulangan for di dalam perulangan for lainnya untuk mendapatkan elemen dari array dua dimensi (kita masih harus menunjuk ke dua indeks)

Java

Contoh lainnya adalah dapat dilihat pada kode berikut. Mari kita lihat contoh sederhana untuk mendeklarasikan, membuat instance, menginisialisasi, dan mencetak array 2 Dimensional.

Java

Yang akan menghasilkan output

1 2 3
2 4 5
4 4 5

Jagged Array pada Java

Jika kita membuat kolom ganjil dalam array 2D, ini dikenal sebagai array jagged. Dengan kata lain, ini adalah array – array dengan jumlah kolom berbeda. Kita bisa lihat dengan contoh kode berikut

Java
Outputnya akan menghasilkan : 
0 1 2 
3 4 5 6 
7 8 

Method getClass() dan getName()

Di Java, array adalah objek. Untuk objek array, dibuat kelas proxy yang namanya bisa diperoleh dengan metode getClass (). getName () pada objek tersebut. contoh penggunaanya adalah

Java

Copy Array pada Java

Kita bisa menyalin array ke array lain dengan metode arraycopy () dari kelas Sistem. Sintaks untuk mengcopy array pada java adalah

Java

Agar lebih jelas maka kita akan membuat sebuah contohnya yaitu

Java

Clonning Array pada Java

Karena, array Java mengimplementasikan antarmuka Cloneable, kita dapat membuat tiruan dari array Java. Jika kita membuat tiruan dari larik berdimensi tunggal, itu membuat salinan dalam larik Java. Artinya, ini akan menyalin nilai sebenarnya. Tapi, jika kita membuat klon dari array multidimensi, itu membuat salinan dangkal dari array Java yang berarti menyalin referensi. Contohnya dapat kita lihat pada kode berikut

Java

Maka didapatkan output berikut

Printing original array:
33
3
4
5
Printing clone of the array:
33
3
4
5
Are both equal?
false

Penambahan 2 Matriks pada Java

Mari kita lihat contoh sederhana yang menambahkan dua matriks

Java

outputnya adalah

2 6 8
6 8 10

Perkalian 2 Matriks pada Java

Dalam kasus perkalian matriks, elemen satu baris dari matriks pertama dikalikan dengan semua kolom dari matriks kedua yang dapat dipahami dengan kode di bawah ini. Mari kita lihat contoh sederhana untuk mengalikan dua matriks dari 3 baris dan 3 kolom.

Java

Output yang dihasilkan akan menjadi

6 6 6 
12 12 12 
18 18 18 

You may also like