Java - Array
Java menyediakan struktur data, file array, yang menyimpan kumpulan elemen berurutan ukuran 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.
Daripada mendeklarasikan variabel individual, seperti number0, number1, ..., dan number99, Anda mendeklarasikan satu variabel array seperti angka dan menggunakan angka [0], angka [1], dan ..., angka [99] untuk mewakili variabel individu.
Tutorial ini memperkenalkan cara mendeklarasikan variabel array, membuat array, dan memproses array menggunakan variabel yang diindeks.
Mendeklarasikan Variabel Array
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 -
Sintaksis
dataType[] arrayRefVar; // preferred way.
or
dataType arrayRefVar[]; // works but not preferred way.
Note - Gayanya dataType[] arrayRefVarlebih disukai. GayadataType arrayRefVar[] berasal dari bahasa C / C ++ dan diadopsi di Java untuk mengakomodasi pemrogram C / C ++.
Contoh
Potongan kode berikut adalah contoh sintaks ini -
double[] myList; // preferred way.
or
double myList[]; // works but not preferred way.
Membuat Array
Anda dapat membuat array dengan menggunakan operator baru dengan sintaks berikut -
Sintaksis
arrayRefVar = new dataType[arraySize];
Pernyataan di atas melakukan dua hal -
Ini membuat array menggunakan dataType [arraySize] baru.
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 index. Indeks array berbasis 0; artinya, mereka mulai dari 0 hinggaarrayRefVar.length-1.
Contoh
Pernyataan berikut mendeklarasikan variabel array, myList, membuat array 10 elemen tipe ganda dan memberikan referensinya ke myList -
double[] myList = new double[10];
Gambar berikut mewakili array myList. Di sini, myList memiliki sepuluh nilai ganda dan indeksnya dari 0 hingga 9.
Memproses Array
Saat memproses elemen array, kami sering menggunakan salah satunya for loop atau foreach loop karena semua elemen dalam array memiliki tipe yang sama dan ukuran array diketahui.
Contoh
Berikut adalah contoh lengkap yang menunjukkan cara membuat, menginisialisasi, dan memproses array -
public class TestArray {
public static void main(String[] args) {
double[] myList = {1.9, 2.9, 3.4, 3.5};
// Print all the array elements
for (int i = 0; i < myList.length; i++) {
System.out.println(myList[i] + " ");
}
// Summing all elements
double total = 0;
for (int i = 0; i < myList.length; i++) {
total += myList[i];
}
System.out.println("Total is " + total);
// Finding the largest element
double max = myList[0];
for (int i = 1; i < myList.length; i++) {
if (myList[i] > max) max = myList[i];
}
System.out.println("Max is " + max);
}
}
Ini akan menghasilkan hasil sebagai berikut -
Keluaran
1.9
2.9
3.4
3.5
Total is 11.7
Max is 3.5
Loop depan
JDK 1.5 memperkenalkan perulangan for baru yang dikenal sebagai perulangan foreach atau perulangan for yang disempurnakan, yang memungkinkan Anda melintasi larik lengkap secara berurutan tanpa menggunakan variabel indeks.
Contoh
Kode berikut menampilkan semua elemen dalam array myList -
public class TestArray {
public static void main(String[] args) {
double[] myList = {1.9, 2.9, 3.4, 3.5};
// Print all the array elements
for (double element: myList) {
System.out.println(element);
}
}
}
Ini akan menghasilkan hasil sebagai berikut -
Keluaran
1.9
2.9
3.4
3.5
Meneruskan Array ke Metode
Sama seperti Anda bisa meneruskan nilai tipe primitif ke metode, Anda juga bisa meneruskan array ke metode. Misalnya, metode berikut menampilkan elemen dalam fileint larik -
Contoh
public static void printArray(int[] array) {
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
}
Anda bisa memanggilnya dengan melewatkan sebuah array. Misalnya, pernyataan berikut memanggil metode printArray untuk menampilkan 3, 1, 2, 6, 4, dan 2 -
Contoh
printArray(new int[]{3, 1, 2, 6, 4, 2});
Mengembalikan Array dari Metode
Suatu metode juga dapat mengembalikan array. Misalnya, metode berikut mengembalikan array yang merupakan pembalikan dari array lain -
Contoh
public static int[] reverse(int[] list) {
int[] result = new int[list.length];
for (int i = 0, j = result.length - 1; i < list.length; i++, j--) {
result[j] = list[i];
}
return result;
}
Kelas Array
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.
Sr.No. | Metode & Deskripsi |
---|---|
1 | public static int binarySearch(Object[] a, Object key) Mencari array tertentu dari Object (Byte, Int, double, dll.) 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)). |
2 | public static boolean equals(long[] a, long[] a2) Mengembalikan nilai benar jika dua larik panjang yang ditentukan sama satu sama lain. Dua larik dianggap sama jika kedua larik berisi jumlah elemen yang sama, dan semua pasangan elemen yang sesuai dalam dua larik adalah sama. Ini mengembalikan nilai true jika dua larik sama. Metode yang sama dapat digunakan oleh semua tipe data primitif lainnya (Byte, short, Int, dll.) |
3 | public static void fill(int[] a, int val) Menetapkan nilai int yang ditentukan ke setiap elemen dari larik int yang ditentukan. Metode yang sama dapat digunakan oleh semua tipe data primitif lainnya (Byte, short, Int, dll.) |
4 | public static void sort(Object[] a) Mengurutkan larik objek yang ditentukan ke dalam urutan menaik, sesuai dengan urutan alami elemennya. Metode yang sama dapat digunakan oleh semua tipe data primitif lainnya (Byte, short, Int, dll.) |