Java - Argumenta Baris Perintah

Hai, para pemrogram Java masa depan! Hari ini, kita akan memulai perjalanan menarik ke dalam dunia argumenta baris perintah di Java. Sebagai guru ilmu komputer yang ramah di lingkungan sekitar Anda, saya di sini untuk mengarahkan Anda melalui topik ini secara langkah demi langkah. Jadi, ambil minuman kesukaan Anda, duduk nyaman, dan mari kita masuk ke dalam!

Java - Command-Line Arguments

Apa Itu Argumenta Baris Perintah?

Bayangkan Anda adalah seorang chef (tunggu dulu, kita akan ke kode segera!). Anda punya resep, tapi kadang-kadang Anda ingin mengubah sedikit bahan-bahannya. Daripada menulis ulang seluruh resep setiap kali, tidakkah Anda merasa senang jika Anda dapat memberitahu resep tentang perubahan yang ingin Anda buat saat Anda mulai memasak? Itu sebenarnya apa yang argumenta baris perintah lakukan bagi program Java kita!

Argumenta baris perintah adalah nilai yang kita dapat kirim ke program Java kita saat kita menjalankan itu dari baris perintah. Mereka memungkinkan kita untuk memberikan input ke program kita tanpa perlu mengubah kode sumber.

Mengirim dan Mengakses Argumenta Baris Perintah

Di Java, argumenta baris perintah dikirim ke metode main sebagai array string. Mari kita lihat contoh sederhana:

public class Greeter {
public static void main(String[] args) {
if (args.length > 0) {
System.out.println("Hello, " + args[0] + "!");
} else {
System.out.println("Hello, World!");
}
}
}

Dalam contoh ini, args adalah array yang berisi argumenta baris perintah. Jika kita memberikan argumenta saat menjalankan program, itu akan menyapa nama itu. Jika tidak, itu akan default ke "Hello, World!".

Untuk menjalankan program ini dengan argumenta baris perintah, kita akan melakukan:

java Greeter Alice

Ini akan menampilkan: Hello, Alice!

Manfaat Argumenta Baris Perintah

  1. Fleksibilitas: Mereka memungkinkan kita untuk mengubah perilaku program tanpa mengubah kode.
  2. Automatisasi: Berguna untuk skrip dan pengolahan batch.
  3. Pengujian: Memudahkan pengujian input berbeda.
  4. Konfigurasi: Dapat digunakan untuk mengatur opsi program.

Contoh Argumenta Baris Perintah Tunggal

Mari kita buat contoh yang lebih praktis. Misalnya kita ingin menghitung luas lingkaran, dan kita akan memberikan jari-jari sebagai argumenta baris perintah.

public class CircleArea {
public static void main(String[] args) {
if (args.length != 1) {
System.out.println("Please provide exactly one argument: the radius of the circle.");
return;
}

try {
double radius = Double.parseDouble(args[0]);
double area = Math.PI * radius * radius;
System.out.printf("The area of a circle with radius %.2f is %.2f\n", radius, area);
} catch (NumberFormatException e) {
System.out.println("The argument must be a valid number.");
}
}
}

Untuk menjalankan program ini, kita akan melakukan:

java CircleArea 5

Ini akan menampilkan: The area of a circle with radius 5.00 is 78.54

Mari kitauraikan apa yang terjadi di sini:

  1. Kita memeriksa jika tepat satu argumenta diberikan.
  2. Kita menggunakan Double.parseDouble() untuk mengkonversi argumenta string ke double.
  3. Kita menghitung luas menggunakan rumus πr².
  4. Kita menggunakan printf untuk memformat output kita secara indah.
  5. Kita tangkap NumberFormatException jika input bukanlah nomor valid.

Contoh Argumenta Baris Perintah Ganda

Sekarang, mari kita tingkatkan dan gunakan argumenta baris perintah ganda. Kita akan membuat kalkulator sederhana yang dapat menambah, mengurangi, mengalikan, atau membagi dua nomor.

public class Calculator {
public static void main(String[] args) {
if (args.length != 3) {
System.out.println("Usage: java Calculator <number1> <operation> <number2>");
System.out.println("Operations: add, subtract, multiply, divide");
return;
}

try {
double num1 = Double.parseDouble(args[0]);
double num2 = Double.parseDouble(args[2]);
String operation = args[1].toLowerCase();

double result;
switch (operation) {
case "add":
result = num1 + num2;
break;
case "subtract":
result = num1 - num2;
break;
case "multiply":
result = num1 * num2;
break;
case "divide":
if (num2 == 0) {
System.out.println("Error: Division by zero!");
return;
}
result = num1 / num2;
break;
default:
System.out.println("Unknown operation: " + operation);
return;
}

System.out.printf("%.2f %s %.2f = %.2f\n", num1, operation, num2, result);
} catch (NumberFormatException e) {
System.out.println("Error: Invalid number format.");
}
}
}

Untuk menggunakan kalkulator ini, kita akan melakukan sesuatu seperti:

java Calculator 10 add 5

Ini akan menampilkan: 10.00 add 5.00 = 15.00

Mari kitauraikan contoh yang lebih kompleks ini:

  1. Kita memeriksa untuk tepat tiga argumenta: dua nomor dan operasi.
  2. Kita mengkonversi argumenta pertama dan ketiga menjadi double.
  3. Kita menggunakan statement switch untuk melakukan operasi yang sesuai berdasarkan argumenta kedua.
  4. Kita menangani kesalahan potensial, seperti pembagian nol atau operasi yang tidak valid.
  5. Akhirnya, kita menampilkan hasilnya dalam string yang diformat secara indah.

Kesimpulan

Argumenta baris perintah adalah alat yang kuat dalam peralatan pemrogram Java. Mereka memungkinkan kita untuk menciptakan program yang fleksibel dan dapat digunakan kembali yang dapat menangani input berbeda tanpa perlu mengubah kode sumber. Ketika Anda terus melanjutkan perjalanan Java Anda, Anda akan menemukan banyak penggunaan untuk argumenta baris perintah, khususnya dalam aplikasi dan skrip yang lebih kompleks.

Ingat, kunci untuk menjadi ahli pemrograman adalah praktik. Cobalah untuk mengubah contoh ini atau menciptakan program Anda sendiri yang menggunakan argumenta baris perintah. Mungkin Anda dapat menciptakan program yang membuat kartu salam yang disesuaikan berdasarkan input baris perintah, atau alat yang konversi antara satuan ukuran berbeda. Kesempatan adalah tak terbatas!

Selamat coding, dan semoga argumenta baris perintah Anda selalu valid!

Credits: Image by storyset