Dasar Pemrograman Java: Array 1 Dimensi

Array (atau Larik) adalah tipe data terstruktur yang dapat menyimpan banyak data dengan suatu nama yang sama, menempati tempat di memori yang berurutan (kontigu), dan bertipe data sama pula. Larik dapat diakses berdasarkan indeksnya, yang umumnya dimulai dari 0.

1. Deklarasi Array 1 Dimensi (3 Cara)

Ada tiga cara utama untuk mendeklarasikan dan menginisialisasi array di Java.

Cara 1: Deklarasi Terpisah

Anda menamai array terlebih dahulu, lalu menentukan ukurannya di baris yang berbeda.

int [] anArray; // Diberi nama dulu 
anArray = new int [3]; // Tentukan banyak data (ukuran 3) 

// Pemberian nilai dimulai dari index ke 0 
anArray [0] = 20; 
anArray [1] = 10; 
anArray [2] = 30; 

Cara 2: Deklarasi dan Inisialisasi Ukuran Satu Baris

Penamaan array dan pemberian banyaknya data array dijadikan satu statement.

// Ukuran 3 untuk String
String [] y = new String [3]; 

// Pemberian nilai tetap dimulai dari index ke 0 
y[0] = "Joko budi bagus"; 
y[1] = "Budi"; 

Cara 3: Deklarasi dan Inisialisasi Nilai Langsung

Cara ini menyingkat statement dalam coding karena penamaan array dan pemberian nilai dilakukan dalam satu statement. Java akan otomatis menghitung ukurannya (panjangnya 3).

char[] z = {'a', 'b', 'c'}; // Tidak menggunakan 'new' 

System.out.println("Nilai z[0]: " + z[0]); 
// Output: Nilai z[0]: a

2. Panjang Array dan Loop FOR

Sebuah array di Java dapat diketahui panjangnya dengan mengakses properti .length. Properti ini sangat penting ketika dikombinasikan dengan loop FOR.

int [] dataarr = new int [10]; 
int panjangdataarr = dataarr.length; // Nilainya adalah 10 

Kombinasi dengan FOR Loop

Menggunakan .length dalam kondisi loop memastikan bahwa perulangan mencakup seluruh elemen array, terlepas dari ukurannya.

int y [] = {3, 4, 5, 7, 10}; 
// y.length menghasilkan 5 

for (int i=0; i < y.length; i++) // i < 5
{
  System.out.println(y[i]); // Cetak elemen array ke-i
}

Contoh Input Dinamis dengan Scanner

Anda dapat menentukan ukuran array saat program berjalan (runtime) menggunakan input dari Scanner.

import java.util.Scanner;

class array_inputan {
  public static void main (String [] zzz) {
    Scanner s = new Scanner (System.in);
    System.out.print("Masukkan byk array: ");
    int input = s.nextInt(); // Tentukan ukuran array
    
    int [] z = new int [input]; // Ukuran array ditentukan oleh input 
    
    for (int index = 0; index < z.length; index++) // Loop sampai z.length
    {
      System.out.print("Masukkan nilai array ke [" + index + "]: ");
      z[index] = s.nextInt(); // Isi nilai array 
    }
    
    // Loop untuk menampilkan hasilnya 
  }
}

3. Penggabungan Array dengan IF dan FOR

Kekuatan array terletak pada kemampuannya digabungkan dengan struktur IF dan FOR untuk memproses data.

Studi Kasus 1: Mencari Nilai Terbesar

Dengan menggunakan FOR untuk iterasi dan IF untuk perbandingan, kita dapat menemukan nilai terbesar dalam array.

int[] data = {10, 4, 2, 5, 3, 8, 9, 2, 9, 5}; 
int terbesar = data[0]; // Inisialisasi dengan elemen pertama 

for (int i=0; i < 10; i++){ // Loop dari index 0 hingga 9
  if (data[i] > terbesar) // Bandingkan elemen saat ini dengan yang terbesar
    terbesar = data[i]; // Ganti nilai terbesar 
}
System.out.println("Data terbesar = " + terbesar); // Output: Data terbesar = 10 

Studi Kasus 2: Mengakses Data Menggunakan Logika IF

Array dapat digunakan sebagai basis data sederhana yang diakses menggunakan logika pemilihan.

String [] nmbulan = {"januari", "februari", ..., "desember"}; // Index 0-11 
// ... Input int kdbulan ...

if (kdbulan >= 1 && kdbulan <= 12){ // Validasi input 
  // Akses elemen: kdbulan dikurangi 1 karena index array Java dimulai dari 0
  System.out.println("Nama bulan = " + nmbulan [kdbulan - 1]); 
} else {
  System.out.print("Hanya ada 12 bulan saja"); 
}

Jika kdbulan adalah 10, program akan mencetak oktober (nmbulan[9]).

Kesimpulan

Array 1 Dimensi adalah tulang punggung dalam pengelolaan data sejenis di Java. Dengan menguasai tiga cara deklarasi, memahami properti .length, dan menggabungkannya secara efektif dengan loop FOR dan kondisi IF, Anda memiliki fondasi kuat untuk memecahkan masalah pemrograman yang lebih kompleks.

Tantangan: Kembangkan program Studi Kasus 1 (Mencari Nilai Terbesar) agar program juga dapat menampilkan nilai Terkecil dari array yang sama.