Saturday, 25 February 2012

Penggunaan Array dan Fungsi Pernyataan "JOptionPane" Pada Java

Assalamu'alaikum warahmatullahi wabarakatuh


Kemarin itu (pada tanggal postingan sebelumnya dibuat) : lagi asik-asik posting, tau-taunya abis pulsa modemnya, jadi berhenti deh postingnya. #miris , tapi kini sudah terisi pulsa lagi dan bisa posting lagi, biar blognya aktif lagi.hehe

Pada postingan sebelumnya kita sudah membahas perulangan pada java, kali ini saya melanjutkan tentang materi yang saya dapat dari praktikum AP1 pertemuan kelima (31 Oktober 2009) tentang array pada java.


Sebagai berikut kronologinya.hehe :)

Ini coding programnya:


import javax.swing.*;
class Array
{
public static void main(String[] args)
{
String [] a =new String [9];
a[0]="minggu";
a[1]="senin";
a[2]="selasa";
a[3]="rabu";
a[4]="kamis";
a[5]="jumat";
a[6]="sabtu";
do

{
String x=JOptionPane.showInputDialog("masukan pilihan \n1.minggu\n2.senin\n3.selasa\n4.rabu\n5.kamis\n6.jumat\n7.sabtu");
int i=Integer.parseInt(x);
i=i-1;
if (i==0)
{
JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"besok hari "+a[i+1],"hasil",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"lusa hari "+a[i+2],"hasil",JOptionPane.INFORMATION_MESSAGE);
i=6;
JOptionPane.showMessageDialog(null,"kemarin hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"2 hari yang lalu hari "+a[i-1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
}
else if (i==6)
{
JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"kemarin hari "+a[i-1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"2hari yang lalu hari "+a[i-2],"HASIL",JOptionPane.INFORMATION_MESSAGE);
i=0;
JOptionPane.showMessageDialog(null,"besok "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"lusa hari "+a[i+1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
}
else if ((i>6)||(i<0))
{
JOptionPane.showMessageDialog(null,"anda salah memasukan pilihan ","PERINGATAN",JOptionPane.ERROR_MESSAGE);

}
else if (i==1)
{
JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"besok hari "+a[i+1],"hasil",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"lusa hari "+a[i+2],"hasil",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"kemarin hari "+a[i-1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
i=6;
JOptionPane.showMessageDialog(null,"dua hari yang lalu hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
}
else if (i==5)
{
JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"besok hari "+a[i+1],"hasil",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"kemarin hari "+a[i-1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"dua hari yang lalu hari "+a[i-2],"HASIL",JOptionPane.INFORMATION_MESSAGE);
i=0;
JOptionPane.showMessageDialog(null,"lusa hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
}
else
{
JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"kemarin hari "+a[i-1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"2 hari yang lalu "+a[i-2],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"besok hari "+a[i+1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"lusa hari "+a[i+2],"HASIL",JOptionPane.INFORMATION_MESSAGE);
}

}

while(JOptionPane.showConfirmDialog(null,"mau coba lagi?")==JOptionPane.YES_OPTION);
}
}



Output programnya: 
Setelah kita mengcompile program, maka akan keluar kotak dialog input seperti :


NB: Setelah program dijalankan (terlihat tampilan seperti gambar di atas), coba masukkan dengan angka 1 sampai 7 untuk melihat kelanjutan output programnya.




Logika programnya:



Pernyataan import memungkinkan kita melakukan import kelas-kelas dari package lain ke dalam unit kompilasi. Kita dapat melakukan import kelas-kelas individu atau seluruh kelas di paket pada satu waktu. Pada file sumber, kalimat impurt harus segera setelah kalimat paket (jika ada) dan sebelum definisi kelas. Bentuk import dengan (*) dapat meningkatkan waktu kompilasi, khususnya ketika kita meakukan import beberapa paket yang berukuran besar. import javax.swing.*; digunakan sebagai library pada program ini.
Pernyataan class adalah pernyataan pembuka sebuah kelas. Kelas digunakan untuk menciptakan objek. Pernyataan  class menunjukkan nama kelas dari program yang akan kita buat.
Kemudian pernyataan public static void main(String[] args) adalah pernyataan pembuka sebuah metode. public berarti metode dapat dipanggil dari manapun di dalam dan di luar kelas. Kata static pada pernyataan pembuka metode main. Ini artinya metode main () tidak menggunakan objek yang diciptakan oleh kelas tersebut. void berarti  metode tidak mengirim apa pun setelah selesainya. Fungsi main() dapat mempunyai argumen yang diambil dari daerah eksekusi atau metode yang akan dieksekusi pertama kali saat program tersebut dieksekusi. Dalam metode main, parameternya adalah selalu String[] args. Argumen [] args adalah array objek String argumen-argumen baris perintah yang dilewatkan ke kelas yang dieksekusi. Kelas Array mengabaikan seluruh argumen baris perintah.
Kita dapat meletakkan lebih dari satu pernyataan dalam sebuah metode. Setiap pernyataan dalam sebuah metode dipisahkan oleh titik koma dan akan dieksekusi satu persatu. Pernyataan pada listing akan memanggil sebuah metode lain, yaitu metode println. Sepasang tanda kurung yang berisi informasi tambahan yang diperlukan oleh metode yang dipanggil, yaitu parameter.
Pernyataan String [] a =new String [9]; berguna untuk mengalokasikan memori untuk array. Dalam hal ini 9 adalah kapasitas array yang didefinisikan yang selanjutnya masing-
masing diberi indeks sebagai berikut :
a[0]="minggu";
a[1]="senin";
a[2]="selasa";
a[3]="rabu";
a[4]="kamis";
a[5]="jumat";
a[6]="sabtu";
pernyataan a[0]="minggu"; berarti array pilihan pertama berisikan data string "minggu", begitupun dengan pernyataan-pernyataan indeks array selanjutnya.

Pernyataan do-while disini gunanya sama dengan penggunaan while, yaitu digunakan untuk mengeksekusi sebuah blok pernyataan secara berulang sampai tidak memenuhi kondisi tertentu. Pada penggunaan perulangan while, ekspresi diperiksa pada saat awal, jadi ada kemungkinan blok statement dalam while tidak dieksekusi. Namun dalam do-while, ekspresi tidak diperiksa pada awal eksekusi, jadi minimal blok statement do-while dieksekusi sekali.

Pernyataan JOptionPane; menjelaskan bahwa kita mengimpor class JOptionPane dari package javax.swing

Pernyataan String x=JOptionPane.showInputDialog("masukan pilihan \n1.minggu\n2.senin\n3.selasa\n4.rabu\n5.kamis\n6.jumat\n7.sabtu");
digunakan untuk menampilkan  kotak dialog beserta pilihan-pilihan yang kita telah daftarkan pada(“…”), dan jika dieksekusi akan menghasilkan kotak dialog seperti yang terlihat pada output program di atas. 



Pernyataan int i=Integer.parseInt(x); i=i-1; digunakan untuk mengeksekusi hasil data yang kita input pada kotak dialog pilihan hari. Jika kita menginput data 1 maka program akan menghitung i=1-1; dan hasinya adalah 0 dan program akan mengeksekusi pernyataan a[0]="minggu"; jadi yang dieksekusi adalah array ke-0 (pertama). Begitu juga misalnya kita menginput data lainnya.

Pernyataan if (i==0), digunakan sebagai indeks pada array. Pernyataan if (i==0), menandakan bahwa program akan membaca hari dimulai pada urutan 0 di arraynya.
Pernyataan JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);, artinya program akan menampilkan kotak dialog yang berisi data yang kita input. Ingat, indeks pada pernyataan ini adalah if (i==0), maka yang akan keluar kotak dialog hari minggu.

Pernyataan while(JOptionPane.showConfirmDialog(null,"mau coba lagi?")==JOptionPane.YES_OPTION);, artinya program akan menampilkan kotak dialog baru yang berisikan pilihan Yes atau No. Jika kita memilih Yes, maka program akan looping ke kotak dialog pilihan hari. Jika kita pilih No atau Cancel, maka program akan mengakhiri eksekusi program tersebut




Pernyataan else if ((i>6)||(i<0)){
JOptionPane.showMessageDialog(null,"anda salah memasukan pilihan ","PERINGATAN",JOptionPane.ERROR_MESSAGE); , artinya program akan menampilkan kotak dialog baru yang berisikan peringatan bahwa data yang kita input pada kotak dialog pilihan hari adalah salah, yaitu tidak ada dalam pilihan [0]=1 sampai [6]=7.



Pernyataan else if (i==1) , digunakan sebagai indeks pada array. Pernyataan else if (i==1), menandakan bahwa program akan membaca hari dimulai pada urutan 1 di arraynya. Dan eksekusi program pada indeks else if (i==1) , dimulai dari hari senin. Alur eksekusi program pada pernyataan:



JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"besok hari "+a[i+1],"hasil",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"lusa hari "+a[i+2],"hasil",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"kemarin hari "+a[i-1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
i=6;
JOptionPane.showMessageDialog(null,"dua hari yang lalu hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);

Alur eksekusinya sama seperti pada indeks if (i==0) , bedanya hanya array pertama yang dieksekusinya adalah array ke 1, yaitu hari senin.

Pernyataan else if (i==5) , digunakan sebagai indeks pada array. Pernyataan else if (i==5), menandakan bahwa program akan membaca hari dimulai pada urutan 5 di arraynya. Dan eksekusi program pada indeks else if (i==5) , dimulai dari hari jumat.
Alur eksekusinya hampir sama seperti pada indeks else if (i==6) , bedanya hanya array pertama yang dieksekusinya adalah array ke 5, yaitu hari jumat. Dan urutan eksekusinya pada pernyataan :

JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"besok hari "+a[i+1],"hasil",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"kemarin hari "+a[i-1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"dua hari yang lalu hari "+a[i-2],"HASIL",JOptionPane.INFORMATION_MESSAGE);
i=0;
JOptionPane.showMessageDialog(null,"lusa hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);

Eksekusi program setelah mengeksekusi urutan hari pada array, yaitu array ke 5. Yang dieksekusi pertama adalah pernyataan hari ini (jumat), lalu 1 hari setelah hari jumat (sabtu), lalu 1 hari sebelum hari jumat (kamis), lalu 2 hari yang lalu sebelum hari jumat (rabu), dan 2 hari setelah hari jum’at (minggu).

Fungsi else, digunakan jika data yang kita input tidak kita daftarkan pada indeksnya. Pernyataan else), menandakan bahwa program akan membaca hari selain urutan 0, urutan 6, urutan 1, dan urutan 5 di arraynya. Dan eksekusi program pada else, dimulai dari hari selain hari yang telah dideklarasikan pada indeksnya, yaitu dapat dimulai dari hari selasa atau rabu maupun kamis dengan catatan, data input bukan 0, 6, 1, dan 5. Urutan eksekusinya pada pernyataan :

JOptionPane.showMessageDialog(null,"hari ini hari "+a[i],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"kemarin hari "+a[i-1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"2 hari yang lalu "+a[i-2],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"besok hari "+a[i+1],"HASIL",JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showMessageDialog(null,"lusa hari "+a[i+2],"HASIL",JOptionPane.INFORMATION_MESSAGE);

Eksekusi program setelah mengeksekusi urutan hari pada array, yaitu array ke 2 atau 3 atau 4. Yang dieksekusi pertama adalah pernyataan hari ini (selasa/rabu/kamis), lalu 1 hari sebelum hari selasa/rabu/kamis (senin/selasa/rabu), lalu 2 hari setelah selasa/rabu/kamis (kamis/jumat/sabtu), lalu 1 hari setelah hari selasa/rabu/kamis (rabu/kamis/jumat), dan 2 hari sebelum hari selasa/rabu/kamis (minggu/senin/selasa).

Setelah selesai sampai pada langkah terakhir, jangan lupa save listing program yang telah dibuat. Karena java bersifat case sensitive, maka penulisan nama kelas dan nama filenya harus kita perhatikan dengan teliti, apakah sama atau tidak. Jika nama kelas dengan nama file yang kita buat tidak sama, maka project yang kita buat tidak akan bisa dieksekusi (dijalankan).
Seperti : nama kelas yang kita buat bernamakan Array, maka pada menu save as kita harus mengetikken nama filenya adalah Array.java
Selanjutnya untuk mengeksekusi project yang telah dibuat dengan program Eclipse, langkahnya adalah hanya tinggal memilih tools Run (pastikan project yang kita buat telah di save terlebih dahulu).
Jika ingin mengeksekusi program yang telah dibuat dengan Command Prompt, langkah pertamanya, kita harus mengcompile file program yang telah kita buat sebelumnya dengan menggunakan perintah javac Nama File.java
Seperti : javac Array.java
setelah file di compile, lalu gunakan perintah java Nama File untuk mengeksekusi program yang telah kita buat.
Seperti : java Array





Sekian penjelasan tentang program array pada java yang dapat saya bagikan kepada kawan-kawan. Semoga ada manfaatnya! Akhir kata, terima kasih dan ...


Wassalamu'alaikum warahmatullahi wabarakatuh

4 comments:

  1. sangat membantu.
    thanks a lot.

    ReplyDelete
  2. masnyaa...
    Boleh mnta template blog'mu ndak? :D

    ReplyDelete
    Replies
    1. Ini aku pake template bawaan dari bloggernya mbak, cuma aku tambah-tambahin widget aja di bagian kanannya. Ngga ada yg sepesial mbak..hehe

      Delete

Harry Potter - Golden Snitch Angry Birds -  Red Bird