MODUL PRAKTIKUM
DASAR PEMROGRAMAN JAVA

TUJUAN 
Siswa memahami tentang dasar-dasar Algoritma pemrograman dan mengimplementasikan program sederhana dengan NetBeans.

TEORI SINGKAT

Pengenalan Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Kata logis disini berarti benar sesuai dengan logika manusia. Untuk menjadi sebuah algoritma, urutan langkah yang ditempuh untuk menyelesaikan masalah harus memberikan hasil yang benar. 
 

Program
Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. 

 

Pengenalan NetBeans
NetBeands adalah merupakan IDE yang ditujukan untuk memudahkan pemrograman java. Dalam NetBeans , pemrograman dilakukan berbasis visual dan event driven. Persis seperti IDE lain, misalnya Borland Delphi dan Micrsoft Visual Studio.
Untuk membuat dialog atau user-interface, kita tidak perlu membuat teks program secara manual baris per baris,tetapi cukup klik pada component-pallete. Teks program akan dihasilkan secara otomatis. NetBeans mencakup compiler atau builder , dan debugger internal. Hal ini sangat memudahkan proses paska perancangan program. Proses deployment dan atau tanpa tes dapat juga dilakukan dari dalam NetBeans. 
Cara menggunakan NetBeans untuk menjalankan java.
1. Pastikan dulu anda sudah menginstal java di computer Anda
2. Kemudian download juga NetBeans 
3. Instal NetBeans di komputerta Anda
4. Setelah kedua software siap, jalankan NetBeans.
 
PELAKSANAAN PRAKTIKUM 
Langkah – lahkah praktikum
1. Pilih Start --> Program --> NetBeands
2. Anda akan peroleh tampilan awal sebagai berikut :
3. Pilih menu File
4. Pilih sub menu New Project. Akan muncul layar sebagai berikut

5. Pilih General, pada pilihan Categories
6. Pilih Java Aplication pada pilihan Project
7. Klik Next -->
8. Akan muncul layar sebagai berikut
 
9. Tulis nama project pada isian Project Name
10. Pilih lokasi penyimpanan pada isian Project Location. Anda bisa menuliskan lokasinya atau menggunakan tombol Browse
11. Centang pilihan Set as Main Project, jika Anda berharap ini akan menjadi project utama Anda.
12. Centang pilihan Create Main Class jika Anda akan langsung membuat kelas main. Atau Anda bisa mengganti nama kelasnya(bukan kelas main)
13. Kemudian klik finish. Anda akan menjumpai tampilan sebagi berikut:

14. Setelah tampilan ini, Anda bisa membuat program dalam kelas Main atau Anda bisa membuat kelas sendiri.
15. Jika anda akan membuat kelas dari tampilan ini, maka pilih lokasi yang akan anda gunakan untuk meletakkan kelas Anda, bisa di Source Package atau programsederhana (dalam contoh ini). Pilih New --> Java Class.


16. Akan muncul tampilan sebagai berikut:

17. Kemudian tuliskan nama kelasnya. Dalam contoh ini diberi nama Program Pertama
18. Klik Finish
19. Anda akan menjumpai tampilan seperti berikut:


20. Untuk program pertama ini, hapus bagian yang di blok. Ganti menjadi sebagai berikut:

21. Setelah itu jalankan dengan cara klik kanan pada tab Projects pada nama kelasnya, dalam hal ini Program Pertama. Tampilannya adalah sebagai berikut:

22. pilih run Akan terjadi proses kompilasi. Perhatikan bagian tab Output. Jika berhasil, tidak ada kesalahan akan muncul tampilan sebagai berikut :
 
Dengan demikian anda berhasil membuat dan menjalankan program java dengan menggunakan NetBeans.

JDK ( Java Development Kit)
Java adalah salah satu salah jenis Bahasa 
Pemrograman yang mendukung Pemrograman Orintasi Objek. Bahasa yang di kembangkan pada tahun 1955. Oleh Sun Microsystem mampu berjalan di pada berbagai platform mesin dan OS.dengan di dukungan Java Interpreter dan Java Virtual Machine. Aplikasi java dapat berjalan di aplikasi web browser seperti Chrome, Monzilla, Internet Explorer, dan Necape Navigator. 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 70 
LATIHAN
a) Buatlah project baru dengan nama Algoritma1
b) Buatlah kelas baru dengan nama Latihan1
c) Ketikkan program berikut :

public class  Latihan1 {
public static void main ( String args[])
{
System.out.println("Ini Program pertama dengan JDK.SE 9” );
}}
Program menghasilkan Output sebagai berukut :
Ini Program pertama dengan JDK.SE 9


1. Tujuan
Siswa memahami tentang dasar-dasar pemrograman java dan dapat membuat program java sederhana
2. TEORI SINGKAT 
Java adalah bahasa pemrograman multi platform. Java tidak menyediakan IDE khusus seperti halnya bahasa pemrograman yang lain.Pemrogram bisa menggunakan IDE yang support ke Java, misalnya Netbeans, Eclips, TexPad, dan lain-lain. Editor teks bisa digunakan semisal Notepad. Jika editor yang digunakan tidak support Java, kita tinggal menyimpannya dalam ekstensi .java kemudian kompilasi dan menjalankannya menggunakan command prompt.
Secara umum, elemen-elemen dasar pemrograman Java terdiri dari :
1. Himpunan Karakter
Himpunaan karakter terdiri dari huruf, digit maupun simbol-simbol lainya
(termasuk spasi, karakter kontrol).
Contoh :
Huruf : A, a, B, b, C, c ...............
Digit : 0, 1, 2, 3, 4, 5 ...........
Simbol dan lainnya : _ - + * dan sebagainya
2. Pengenal (identifier)
Pengenal atau identifier adalah suatu nama yang bisa dipakai dalam
pemrograman untuk menyatakan :
- variabel
- konstanta bernama
- tipe data
- fungsi
- label
- obyek
Contoh :
moSiswa;
no_
Siswa;
3. Kata Kunci
Pengenal sistem yang mempunyai makna khusus bagi kompiler. Kegunaan dari golongan ini tidak dapat diubah.
Contoh :
case, char, const, do, else, for, return, void, while, dan lain-lain
4. Tipe Data Primitif
Bahasa Pemrograman Java adalah bahasa pemrograman yang selalu
menggunakan tipe data untuk setiap variabelnya. Itu berarti bahwa semua
variabel harus dideklarasikan terlebih dahulu sebelum mereka digunakan

Misalnya
--> int nilai = 1;
 byte: Tipe data byte adalah 8-bit integer bertanda two's complement. Tipe ini mempunyai nilai minimum -128 dan nilai maksimumnya adalah 127.
--> short: Tipe data short merupakan integer 16 bit two's complement yang mempunyai nilai minimum -32,768 dan nilai maksimum 32,767.
--> int: Tipe data int adalah integer 32 bit two's complement. Dia mempunyai nilai minimum -2,147,483,648 sedangkan nilai maksimumnya adalah 2,147,483,647 (inclusive).
--> long: Tipe data long adalah integer 64 bit two's complement. Nilai minimumnya adalah -9,223,372,036,854,775,808 sedangkan nilai maksimumnya adalah 9,223,372,036,854,775,807 (inclusive). Gunakan tipe data ini pada saat anda memerlukan jangkau nilai yang lebih besar daripada yang bisa disajikan oleh int
.--> float: Tipe data float merupakan single-precision 32-bit IEEE 754 floating point.
--> double: Tipe data double adalah double-precision 64-bit IEEE 754 floating point.
Batas nilai floating point
 
-->boolean: Tipe data boolean hanya mempunyai dua nilai yang mungkin, yaitu true dan false. Gunakan tipe data ini untuk flag-flag sederhana untuk menjejak/menelusuri kondisi true atau false. Tipe data ini merepresentasikan satu bit informasi, tetapi ukurannya tidak didefinisikan dengan tepat.
--> char: Tipe data char adalah karakter Unicode 16 bit. Tipe data ini mempunyai nilai minimum '\u0000' (atau 0) dan nilai maksimum '\uffff' (atau 65,535). 
5. Variabel dan Konstanta
Variabel digunakan dalam program untuk menyimpam suatu nilai, dan nilai yang ada padanya dapat diubah selama ekseskusi berlangsung. Konstanta adalah nilai yang tetap.

Contoh :
float jumlah;
jumlah = 10;
6. Konstanta bernama
Hal ini dapat dilakukan dengan menggunakan kata kunci const.
Contoh :
const float PHI = 3.14;

NILAI DEFAULT
Tidak selalu perlu untuk menentukan suatu nilai ketika sebuah field dideklarasikan. Field yang dideklarasikan tetapi tidak diinisialisasi akan diset ke default yang ada oleh kompiler. Secara umum, default ini akan bernilai null atau zero tergantung pada tipe datanya. Tabel merangkum nilai default untuk tipe-tipe data di atas.
 
PERNYATAAN MASUKAN DAN KELUARAN DALAM JAVA
Dalam bahasa pemrograman Java, kita akan menggunakan pernyataan masukan dan keluaran. Pernyataan masukan adalah pernyataan untuk mendapatkan masukan dari keyboard. Sedangkan pernyataan keluaran adalah pernyataan untuk menampilkan sesuatu nilai ke layar.
1. Komponen keluaran
Untuk menampilkan ke layar secara tekstual, java mempunyai fasilitas output, yaitu dengan perintah System.out.print( hal yang akan ditampilkan, bisa lebih dari satu); untuk menampilkan ke layar dan setelah selesai tidak berpindah baris. Akibatnya perintah keluaran berikutnya akan ditampilkan pada baris yang sama. Dan perintah System.out.println(hal yang akan ditampilkan, bisa lebih dari satu); untuk menampilkan ke layar dan setelah selesai berpindah baris. Akibatnya perintah keluaran setelah itu akan ditampilkan pada baris berikutnya.
System.out.println(―Hasil penjumlahan ―+hasil);
//menampilkan isi variabel hasil
2. Komponen masukan
Untuk memasukkan sebuah nilai ke variabel yang sudah didefinisikan digunakan kelas Scanner (kelas ini disediakan mulai Java versi 1.5).
a. Input data bertipe Integer
Untuk menginputkan data dengan tipe integer digunakan method nextInt di dalam kelas Scanner.
b. Input data bertipe String
Untuk menginputkan data dengan tipe integer digunakan method nextInt di dalam kelas Scanner.
c. Input tipe yang lain
Untuk input data dari keyboard dengan tipe yang lain dan disediakan oleh kelas Scannr adalah sebagai berikut
--> nextBoolean : input tipe boolean (true atau false saja)
--> nextShort : input tipe short integer
--> nextLong : input tipe long integer
--> nextFloat : input tipe float
--> nextDouble : input tipe double

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 71

public class namaku {
public static void main ( String args[])
{
String namaku,sekolah, alamatku;
namaku = "
SOBIRIN ";
sekolah = "SMK AL FALAH KRATON ";
alamatku = "Selotambak Kraton Pasuruan";
System.out.println("Namaku = " + namaku );
System.out.println("Sekolah di = " + sekolah );
System.out.println("Alamat Sekolah ku = " + alamatku );
}}
Program menghasilkan Output sebagai berukut :
Namaku = SOBIRIN
Sekolah di = SMK AL FALAH KRATON
Alamat Sekolah ku = Selotambak Kraton Pasuruan
Type data Float untuk data nilai pecahan Desimal

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 91
public static void main ( String args[])
{
// Membuat Type Data
String nama;
int umur;
double tinggi;
// Memgisi Variabel
nama = "Amelia Putri ";
umur = 18 ;
tinggi = 165.6;
// Menampilkan Hasil Output nya
System.out.println("Nama Saya : " + nama );
System.out.println("Umur Saya : " + umur );
System.out.println("Tinggi Badan : " + tinggi );
}}
Program menghasilkan Output sebagai berukut :
Nama Saya : Amelia Putri
Umur Saya : 18
Tinggi Badan : 165.6 

PELAKSANAAN PRAKTIKUM
TYPE DATA DALAM JAVA
BUKU HALAMAN 92

public class type_data_char {
public static void main ( String args[])
{
char kar1, kar2;
kar1= 'A';
kar2= 'B';
System.out.println("Karakter 1 = " + kar1 );
System.out.println("Karakter 2 = " + kar2 );
}}
Program menghasilkan Output sebagai berukut :
Karakter 1 = A
Karakter 2 = B
Variabel dan Konstanta Dalam Java 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 93
class Umur {
public void umurku()
{
int usia = 0 ;
usia = usia + 17 ;
System.out.println("Umur saya sekarang : " + usia );
}
public static void main(String[]args)
{
Umur coba = new Umur();
coba.umurku();
}}
Program menghasilkan Output sebagai berukut :
Umur saya sekarang : 17
VariabeL Instance Dalam Java

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 94
class PegawaiInstance{
public String nama;
public void pegawai(String xnama)
{
nama =xnama;
}
public String getNama()
{
return nama;
}
public static void main(String[]args)
{
PegawaiInstance namaku= new
PegawaiInstance();
namaku.pegawai ("Afiya");
System.out.println("Nama saya adalah : " + namaku.getNama());
} }
Program menghasilkan Output sebagai berukut :
Nama saya adalah : Afiya
VariabeL kelas atau static Dalam Java

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 95

class varstatic
{
public static final String namaku= "Sobirin";
public static void main(String[]args)
{
System.out.println("Nama saya adalah : " + namaku);
}}
Program menghasilkan Output sebagai berukut :
Nama saya adalah : Sobirin

PELAKSANAAN PRAKTIKUM
OPERASI ARITMATIKA Dalam Java
BUKU HALAMAN 127

Contoh operasi aritmatika dengan Java
public class aritmatika_hal_127 {
public static void main(String args[])
{
double a,b,juml,bagi,kali,minus,sisa;
a=121;
b=11;
juml=a+b;
minus=a-b;
bagi=a/b;
kali=a*b;
sisa=a%b;
System.out.println("A=" + a );
System.out.println("B=" + b );
System.out.println("Hasil Penjumlahan =" + juml );
System.out.println("Hasil Pengurangan =" + minus );
System.out.println("Hasil Pembagian =" + bagi );
System.out.println("Hasil Perkalian =" + kali );
System.out.println("Hasil Sisa Bagi =" + sisa );
}}
Program menghasilkan Output sebagai berukut :
A=121.0
B=11.0
Hasil Penjumlahan =132.0
Hasil Pengurangan =110.0
Hasil Pembagian =11.0
Hasil Perkalian =1331.0
Hasil Sisa Bagi =0.0 

PELAKSANAAN PRAKTIKUM
OPERASI ASSIGMENT Dalam Java
BUKU HALAMAN 131

public class operasi_assigment_131 {
public static void main(String args[])
{
double a,b,juml,bagi,kali,minus,sisa;
a=121;
b=11;
System.out.println("Nilai A=" + a );
System.out.println("Nilai B=" + b );
a+= b;
System.out.println("Hasil Assigment a+=b :" + a );
a=10;
b=5;
System.out.println("Nilai A=" + a );
System.out.println("Nilai B=" + b );
a*=b;
System.out.println("Hasil Assigment a*=b :" + a );
}}
Program menghasilkan Output sebagai berukut :
Nilai A=121.0
Nilai B=11.0
Hasil Assigment a+=b :132.0
Nilai A=10.0
Nilai B=5.0
Hasil Assigment a*=b :50.0

PELAKSANAAN PRAKTIKUM
OPERASI KONDISIONAL DALAM JAVA
BUKU HALAMAN 132

public class operasi_kodisional_132 {
public static void main(String args[])
{
int x,y;
x=20;
y=(x == 1)?100:200;
System.out.println("Nilai y Adalah : " + y );
y=(x == 20)?100:200;
System.out.println("Nilai y Adalah : " + y );
}}
Program menghasilkan Output sebagai berukut :
Nilai y Adalah : 200
Nilai y Adalah : 100

PELAKSANAAN PRAKTIKUM
STRUKTUR KONTROL PERCABANGAN
BUKU HALAMAN 141

import java.util.Scanner;
public class scanner_halaman_141 {
public static void main(String []args ){
int nilai_percobaan;
Scanner scan=new Scanner(System.in);
System.out.print("Nilai Ujian : ");
nilai_percobaan = scan.nextInt();
if (nilai_percobaan >=70 )
{
System.out.println("LULUS");
} } }
Keluaran dari eksekusi script di atas adalah :
Nilai Ujian : 80
LULUS
Nilai Ujian : 90
LULUS
 
PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 142

import java.util.Scanner;
public class waktu_halaman_142 {
public static void main(String[]args){
int x, jam, menit;
System.out.print("Total Waktu Dalam Menit :" );
Scanner inputan=new Scanner(System.in);
x = inputan.nextInt();
jam = x / 60;
menit = x % 60;
if (x > 0 )
{
System.out.println("Jam : "+jam+" menit : "+menit );
} } }
Keluaran dari eksekusi script di atas adalah :
Total Waktu Dalam Menit :130
Jam : 2 menit : 10
Total Waktu Dalam Menit :120
Jam : 2 menit : 0

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 143

import java.util.Scanner;
public class ifelse_halaman_143{
public static void main(String[]args) {
int nilai ;
System.out.print("Masukkan Nilai Anda : ");
Scanner inputan = new Scanner(System.in);
nilai = inputan.nextInt();
if (nilai >= 70)
{
System.out.println("Kompeten");
}
else
{
System.out.println("Tidak Kompeten");
}}}
Keluaran dari eksekusi script di atas adalah :
Masukkan Nilai Anda : 80
Kompeten
Masukkan Nilai Anda : 50
Tidak Kompeten 
 
PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 144

import java.util.Scanner;
public class menetukan_bilangan_ganjil_genap_hal_144 {
public static void main(String[]args){
int nilai,hasil;
System.out.print("Masukkan Bilangan Bulat :" );
Scanner inputan=new Scanner (System.in);
nilai = inputan.nextInt();
hasil = nilai % 2;
if (hasil == 0 )
{
System.out.println(nilai+" ADALAH BILANGAN GENAP ");
}
else
System.out.println(nilai+" ADALAH BILANGAN GANJIL ");
} } }
Keluaran dari eksekusi script di atas adalah :
Masukkan Bilangan Bulat : 12
12 ADALAH BILANGAN GENAP
Masukkan Bilangan Bulat :13
13 ADALAH BILANGAN GANJIL

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 146
import java.util.Scanner;
public class Class_if_bersarang_hal_146 {
public static void main(String[]args){
int nilai;
System.out.print("Masukkan Nilai Anda :" );
Scanner inputan=new Scanner (System.in);
nilai = inputan.nextInt();
if (nilai >= 70 )
{
System.out.println("KOMPETEN");
}
else if (nilai < 70 )
{
System.out.println(" TIDAK KOMPETEN");
} else
{
System.out.println(" MA'AF NILAI YANG ANDA MASUKKAN BELUM BENAR ");
}}}
Keluaran dari eksekusi script di atas adalah :
Masukkan Nilai Anda : 80
KOMPETEN
Masukkan Nilai Anda : 50
TIDAK KOMPETEN
 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 149-150
public class tota_bilangan_hal_149 {
public static void main (String[] args) {
int ganjil,genap,i,hasil;
ganjil = 0;
genap = 0;
i = 0;
while (i <= 100)
{
hasil = i % 2;
if (i <= 50)
{
if(hasil == 0)
{
genap+=i;
}
}else
{
if(hasil !=0)
{
ganjil +=i;
}}
i++;
}
System.out.println("Total bil .genap ="+genap);
System.out.println("Total bil .ganjil ="+ganjil);
} }
Keluaran dari eksekusi script di atas adalah :
Total bil .genap =650
Total bil .ganjil =1875
 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 152
import java.util.Scanner;
public class switch_case_hal_152 {
public static void main(String[]args){
char grade;
Scanner input = new Scanner(System.in);
System.out.print("Masukkan grade Nilai Anda (A | B | C | D ]: ");
grade = input.next().charAt(0);
switch (grade) {
case 'A':
System.out.println("Sangat Baik!");
break;
case 'B':
System.out.println("Baik");
break;
case 'C':
System.out.println("Cukup");
break;
case 'D':
System.out.println("Kurang");
break;
default:
System.out.println("grade Anda di luar pilihan");
}}}
Keluaran dari eksekusi script di atas adalah :
Masukkan grade Nilai Anda ( A | B | C | D ] : A
Sangat Baik ! 

PELAKSANAAN PRAKTIKUM
Buku HALAMAN 161
Perulangan Menaik (Ascending)
Perulangan menaik dengan statement For do menggunakan teknik loopjng berdasarkan deret bilangan paling kecil menunju bilangan paling besar
public class halaman_161 {
public static void main(String[] args){
for(int i=1;i<=19;i++)
{
System.out.print(i + "");
}
System.out.println();
}}
Keluaran dari eksekusi script di atas adalah :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 

PELAKSANAAN PRAKTIKUM
Buku HALAMAN 161
public class class_for_teks_hal_161 {
public static void main(String[] args){
for(int i=1;i<=10;i++)
{
System.out.print("SELAMAT DATANG DI PROGRAM JAVA ");
}
System.out.println();
} }
Keluaran dari eksekusi script di atas adalah :
SELAMAT DATANG DI PROGRAM JAVA 

PELAKSANAAN PRAKTIKUM
Buku HALAMAN 163
Perulangan Menurun (Descending)
Perulangan menurun dengan statement For menggunakan teknik looping berdasarkan deret bilangan paling besar menunju bilangan paling kecil
public class class_perulangan_menurun_descending_hal_163 {
public static void main(String[] args){
for(int i=19;i>=1;i--)
{
System.out.print(i + " ");
}
System.out.println();
}}
Keluaran dari eksekusi script di atas adalah :
19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 165
TEORI SINGKAT

Perulangan while adalah Pernyataan ini berguna untuk memproses suatu pernyataan atau beberapa pernyataan beberapa kali. Selama ungkapan bernilai benar, pernyataan akan selalu dikerjakan.

Perulangan dengan while sejumlah 8 kali
public class class_perulangan_while_do_hal_165 {
public static void main(String[] args){
int i=1;
while (i<=8)
{
System.out.println("Perulangan Dengan While Ke : "+i);
i++;
}}}
Keluaran dari eksekusi script di atas adalah :
Perulangan Dengan While Ke : 1
Perulangan Dengan While Ke : 2
Perulangan Dengan While Ke : 3
Perulangan Dengan While Ke : 4
Perulangan Dengan While Ke : 5
Perulangan Dengan While Ke : 6
Perulangan Dengan While Ke : 7
Perulangan Dengan While Ke : 8 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 166-167
import java.util.Scanner;
public class Menghitung_segitiga_hal_166_167 {
public static void main(String[] args){
int x,a;
Scanner input = new Scanner(System.in);
System.out.print("Masukkan Jumlah Perulangan yang akan di Buat : ");
x=input.nextInt();
a=x;
while (a>0)
{
for (int b=0; b<a; b++){
if (a%2==0)
System.out.println("#");
else
System.out.println("@");
}
System.out.println();
a--;
}}}

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 173 (Perulangan Do..While)
TEORI SINGKAT

Prulangan dengan do..while ini juga digunakan untuk mengerjakan sebuah atau sekelompok pernyataan berulang-ulang. Bedanya dengan while adalah pernyataan do..while akan mengecek kondisi di belakang, sementara while cek kondisi ada di depan.
public class Perulangan_do_while_hal_173 {
public static void main(String[] args){
int i=1;
do {
System.out.print(+i+"");
i++;
}while (i<=14);
System.out.println();
}
}
Keluaran dari eksekusi script di atas adalah :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 

PELAKSANAAN PRAKTIKUM
ARRAY 1 DIMENSI DENGAN JAVA
BUKU HALAMAN 197

Array adalah sebuah tipe data yang mampu menyimpan data bertipe sama dalam urutan elemen berindex. :
public class Aray1dimensi_hal_197 {
public static void main(String[] args){
int [] x;
x = new int[15];
System.out.printf("%s8s\n" , "Array","Nilai");
for ( int ulang=0;ulang < x.length;ulang++)
{
System.out.printf("%3d%8d\n",ulang, x[ulang]);
}}}
keluaran dari eksekusi script di atas adalah :
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
11 0
12 0
13 0
14 0

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 198
public class kelipatan_5_sebanyak_15_elemen_hal_198 {
public static void main(String[] args){
int [] x;
int nilai =5;
x = new int[15];
System.out.printf("%s8s\n" , "Array","Nilai");
for ( int ulang=0;ulang < x.length;ulang++)
{
System.out.printf("%3d%8d\n",ulang,nilai);
nilai=nilai+5;
}}}
Keluaran dari eksekusi script di atas adalah :
0 5
1 10
2 15
3 20
4 25
5 30
6 35
7 40
8 45
9 50
10 55
11 60
12 65
13 70
14 75 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 198
public class menentukan_nilai_elemen_dalam_array_198_199 {
public static void main(String[] args){
int [] x ={ 1,3,5,7,9,11,13,15};
// menampilkan isi dalam elemen
for( int ulang : x)
System.out.println(ulang);
}}}
Keluaran dari eksekusi script di atas adalah :
1
3
5
7
9
11
13
15 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 199
public class mendeklarasikan_array_and_memasukkan_nilai_kedalamarray_hal_199 {
public static void main(String[] args){
String [] x = new String [3];
x [0] ="M.Munir,S.Kom ";
x [1] ="Muhammad Taufik, S.Kom";
x [2] ="Rudi Mahardiyanto,S.Kom";
// menampilkan isi elemen
for ( int ulang=0;ulang <=2;ulang++)
{
System.out.println(x[ulang]);
}}}
Keluaran dari eksekusi script di atas adalah :
M.Munir, S.Kom
Muhammad Taufik, S.Kom
Rudi Mahardiyanto,S.Kom 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 199
import java.util.Arrays;
public class Data_numerik_dengan_method_sort_hal_200 {
public static void main(String[] args){
int larik [] = {100,89,1001,1,234,233,44,56};
System.out.println("Data Array Asli : ");
int i=0;
for ( int ulang : larik ){
System.out.println("Array ke-"+i+"="+ulang);
i=i+1;
}
Arrays.sort(larik);
int x=0;
System.out.println("Data Array setelah d urutkan : ");
for ( int ulang : larik ){
System.out.println("Array ke-"+x+"="+ulang);
x=x+1;
}}}
Keluaran dari eksekusi script di atas adalah :
Data Array Asli :
Array ke-0=100
Array ke-1=89
Array ke-2=1001
Array ke-3=1
Array ke-4=234
Array ke-5=233
Array ke-6=44
Array ke-7=56
Data Array setelah d urutkan :
Array ke-0=1
Array ke-1=44
Array ke-2=56
Array ke-3=89
Array ke-4=100
Array ke-5=233
Array ke-6=234
Array ke-7=1001 

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN 201-202
import java.util.Arrays;
public class posisi_index_setelah_array_hal_201_202 {
public static void main(String[] args){
int larik [ ] = {100,89,1001,1,234,233,44,56};
Arrays.sort(larik);
int i=0;
System.out.println("Hasil Sortng Array adalah : ");
for ( int ulang : larik ){
System.out.println("Array ke-"+i+"="+ulang);
i=i+1;
}
int cariVal=56;
int hasilVal=Arrays.binarySearch(larik,cariVal);
System.out.println("Index elemen " + cariVal + " adalah " + hasilVal);
}}
Keluaran dari eksekusi script di atas adalah :
Hasil Sortng Array adalah :
Array ke-0=1
Array ke-1=44
Array ke-2=56
Array ke-3=89
Array ke-4=100
Array ke-5=233
Array ke-6=234
Array ke-7=1001
Index elemen 56 adalah 2

 

TEORI DASAR  Aplikasi NetBeans

Aplikasi NetBeans terdapat menu Palette yang berisi Swing dan komponen-komponen penting didalamnya untuk membangun sebuah aplikasi menggunakan NetBeans di antaranya :
Swing Containers ini menempatkan komponen-komponen yang berfungsi sebagai
container / background.
1. Panel adalah Merupakan panel yang dapat digunakan sebagai papan dari suatu
bidang / layar lain. 

2. Split Pane adalah :Merupakan 2 tombol yang tebagi menjadi 2 sisi (kiri & kanan).

3. Toolbar adalah Merupakan bar yang dapat dimasukkan tool didalamnya, biasanya digunakan diatas layar.

4. Internal Frame adalah Merupakan bingkai layar baru yang berada didalam bingkai utama.
5. Tabbed Pane adalah Merupakan panel yang memiliki tab & bisa beralih dari tab 1 ke tab lainnya.
6.Scroll Pane adalah Merupakan panel yang dapat di scroll baik horizontal ataupun vertikal
7.Desktop Pane adalah Merupakan container yang digunakan untuk membuat multi dokumen interface atau dekstop virtual.

8.Layered Pane adalah Sebuah container yang memungkinkan setiap komponen didalamnya saling overlap jika diperlukan.
 
Swing Controls adalah menempatkan komponen-komponen yang fungsinya untuk pengelolaan Swing.
1.Label Adalah :Sebuah kolom/area yang digunakan untuk menampilkan tulisan atau
gambar

2.Toggle Button Adalah : Tombol yang memiliki 2 keterangan seperti saklar (ON/OFF)
3.Radio Button Adalah : Tombol yang berfungsi untuk memilih dan tidak memilih pilihan lainnya, tombol ini hanya dapat memilih satu dari sekian pilihan
4.Combo Box adalah : Komponen yang digunakan sebagai dropdown list, bisa digunakan untuk memilih multiple selection.

5.Text Field adalah : Komponen yang digunakan sebagai input / bidang yang dapat diedit (menulis didalamnya.
6.Scroll Bar adalah : Komponen yang menyesuaikan tampilan sebuah konten yang terbatas & menampilkan scroll.

7.Progress Bar adalah :Sebuah bar yang mengindikasi sebuah pekerjaan dengan menampilkan presentasi pekerjaan tersebut

8.Password Field adalah : Sebuah bidang yang digunakan untuk menulis katasandi, tidak akan menampilkan karakter & diganti dengan tanda titik

9.Separator adalah : Digunakan untuk keperluan umum seperti membatasi komponen & memberikan garis pemisah.
10.Editor Pane adalah : Bidang yang sering disebut textarea, biasa digunakan untuk menulis apapun didalamnya.
11.Button adalah : Sebuah tombol sederhana
12.Check Box adalah : Kotak centang yang dapat dicentang atau tidak.
13.Button Group adalah : Class yang digunakan untuk membuat multi lingkup eksklusi satu set tombol.

14.List adalah : Menampilkan sebuah daftar & dapat dipilih lebih dari satu
14.Text Area adalah : Tidak berbeda jauh dengan Editor Pane, sebuah kolom besar yang dapat digunakan untuk menulis.

15.Slider adalah : Pengguna dapat menggeser sebuah nilai secara grafik seperti membesar kecilkan volume.
 

16.Formatted Field adalah : Komponen yang memungkinkan untuk mengedit sebuah nilai didalamnya secara partikular.
17.Spinner adalah : Sebuah bidang input angka yang memiliki tombol naik dan turun untuk mengontrol angka tersebut.

18.Text Pane adalah : Bidang text yang dapat diisi dengan nilai dan menandai isi-isi tersebut.

19.Tree adalah :Sebuah direktori folder yang tersusun seperti pohon ketika memiliki folder didalam folder.

 


PELAKSANAAN PRAKTIKUM
MEMBUAT APLIKASI KALKULATOR SEDERHANA
PADA JAVA FRAME JFORM
1. Buat Project baru dengan nama : kalkulator_baru
2. Pada Package klik kanan -->New -->Jframe Form-->beri nama --> kalkulator
3. Klik pallete --> klik label1--> klik kanan -->edit text-->beri nama Bilangan 1
4. Klik pallete--> klik label2--> klik kanan-->edit text-->beri nama Bilangan 2
5. Klik pallete--> klik text Field1--> klik kanan-->ChangVariabel Name --> beri nama bil1
Klik kanan edit text --> hapus atau di kosongi
6. Klik pallete--> klik text Field2--> klik kanan --> ChangVariabel Name --> beri nama bil2
Klik kanan edit text --> hapus atau di kosongi
7. Klik pallete -->klik text Field3-->klik kanan -->ChangVariabel Name --> beri nama hasil
Klik kanan edit text --> hapus atau di kosongi
8. Combo box --> klik ChangVariabel Name -->operasi --> Pada Properties -->model-->ketik di isi
SISTEM
PERKALIAN
PEMBAGIAN
PENJUMLAHAN
PENGURANGAN

9. Klik pallete--> klik Button1 --> klik kanan-->ChangVariabel Name -->hitung
Klik kanan edit text --> beri nama HITUNG
10. Klik pallete--> klik Button2 --> klik kananàChangVariabel Name --> batal
Klik kanan edit text --> beri nama BATAL
11. Pada Button BATAL --> klik kanan --> EventàAction-->klik -->actionPerformed
Ketik script di bawah ini :
bil1.setText("");
bil2.setText("");
hasil.setText("");
12. Pada Button HITUNG --> klik kanan --> Event-->Action-->klik actionPerformed
Ketik script di bawah ini :
if (operasi.getSelectedItem().toString().equalsIgnoreCase("Perkalian")){
int a=Integer.parseInt(bil1.getText());
int b=Integer.parseInt(bil2.getText());
int proses=a*b;
hasil.setText (Integer.toString (proses));
}
if (operasi.getSelectedItem().toString().equalsIgnoreCase("Pembagian")){
int a=Integer.parseInt(bil1.getText());
int b=Integer.parseInt(bil2.getText());
int proses =a/b;
hasil.setText (Integer.toString (proses));
}
if (operasi.getSelectedItem().toString().equalsIgnoreCase("Penjumlahan")){
int a=Integer.parseInt(bil1.getText());
int b=Integer.parseInt(bil2.getText());
int proses =a+b;
hasil.setText (Integer.toString (proses));
}
if (operasi.getSelectedItem().toString().equalsIgnoreCase("Pengurangan")){
int a=Integer.parseInt(bil1.getText());
int b=Integer.parseInt(bil2.getText());
int proses =a-b;
hasil.setText (Integer.toString (proses));
13. Agar posisi Form ketika di Run atau di jalankan pada posisi tengah
public kalkulator_baru() {
initComponents();
// agar posisi di tengah ketika di run ketik script di bawah ini
setLocationRelativeTo(this);
// Selanjutnya  coba kita jalankan program nya
1. Kita  coba inputkan  pada bilangan 1 angka 25 dan pada bilangan 2 dengan angka 5 
selanjutnya pada Button Operasi kita pilh Sistem Perkalian selanjutnya kita tekan tombol button hitung maka hasil nya = 125
2. selanjutnya pada Button Operasi kita pilh Sistem Pembagian selanjutnya kita tekan tombol button hitung maka hasil nya = 5
3. selanjutnya pada Button Operasi kita pilh Sistem Penjumlahan selanjutnya kita tekan tombol button hitung maka hasil nya = 30
4. selanjutnya pada Button Operasi kita pilh Sistem Pengurangan selanjutnya kita tekan tombol button hitung maka hasil nya = 20
Demo Program Kalkulator

PELAKSANAAN PRAKTIKUM 
MEMBUAT APLIKASI INPUT DATA SISWA
PADA JAVA FRAME JFORM
1. Langkah awal Membuat project baru klik --> File --> New Project

2. Project baru dengan nama : input_data

3. Pada package input_data klik New --> Klik New Jframe Form

4. Buat Jframe Form baru dengan nama : data_siswa --> klik --> Finish
5. Tampilan JavaFrame Form

6. Klik Pallets di sebelah kiri Properties

7. Klik label sebanyak 4 Label
1. Label 1 dengan nama : NIS
2. Label 2 dengan nama : Nama
3. Label 3 dengan nama : Jenis Kelamin 
4. Label 4 dengan nama : Kelas

8. Klik kanan pada label
Klik kanan pada label 1 --> klik Edit Text --> NIS
Klik kanan pada label 2 --> klik Edit Text --> Nama
Klik kanan pada label 3 --> klik Edit Text --> Jenis Kelamin
Klik kanan pada label 4 --> klik Edit Text --> Kelas


9. Klik pada Pallets klik --> Text Field sebanyak 2
Klik kanan pada Text Field 1 --> klik Edit Text --> di hapus / di kosongi
Klik kanan pada Text Field 2 -->klik Edit Text --> di hapus/di kosongi
 
10. Klik kanan pada Text Field 1 klik --> Change Variabel Name

11. Klik --> Change Variabel Name : txtnis

12. Klik kanan pada Text Field 2 klik --> Change Variabel Name --> txtnama --> OK

  13. Klik pada Pallets klik --> Combo Box sebanyak 2

14. Klik pada --> Combo Box1 --> Properties

15. Klik Properties --> Model


Pada Item 1 dengan nama : -- Jenis Kelamin –
Pada Item 2 dengan nama : Laki-laki
Pada Item 3 dengan nama : Perempuan

Klik Combo Box1 --> Jenis Kelamin --> klik kanan --> klik Change Variabel Name

Beri nama : cbjk

Klik pada --> Combo Box2 --> Properties
Klik --> Model

Pada Item 1 dengan nama : -- Kelas –
Pada Item 2 dengan nama : Kelas X/A
Pada Item 3 dengan nama : Kelas X/B

Klik Combo Box2 --> Kelas --> klik kanan --> klik Change Variabel Name

Beri nama : cbkelas

1. Klik pada Pallets klik --> Button jumlah : 3 Button


2. Klik jButton1 --> klik kanan -->Edit Text : SIMPAN 


Klik jButton2 --> klik kanan --> Edit Text : RESET

Klik jButton3 --> klik kanan --> Edit Text : HAPUS

Klik pada Pallets klik --> Table


Pada Tabel klik kanan --> klik Change Variabel Name

Beri nama tabel : tabel_smk_alfalah

Klik kanan pada tabel --> klik Table Contents
 
Klik --> Columns
Halaman Colums --> Dobel klik pada : Title 1,2,3, dan 4 

Title 1 --> NIS
Title 2 --> Nama
Title 3 --> Jenis Kelamin
Title 4 --> Kelas

Pada project klik kanan --> Run File
 
Hasil program di jalankan form tidak berada pada posisi tengah

Klik source
Agar posisi form berada di tengah

Ketik script di bawah ini
setLocationRelativeTo(this);

Kita jalankan lagi maka posisi Form ketika di jalankan berada pada posisi tengah seperti gambar di bawah ini

Ketik script di bawah ini
import javax.swing.table.DefaultTableModel;
di bawah nya
package input_data;

Ketik script di bawah ini
private DefaultTableModel mod;
Di bawahnya
public class data_siswa extends javax.swing.JFrame {
private DefaultTableModel mod;

Klik kanan pada Button SIMPAN klik Event --> Action --> ActionPerformed
Akan mengarah ke script di bawah ini
private void btnsimpanActionPerformed(java.awt.event.ActionEvent evt) {
Selanjutnya Ketik script di bawah ini
String nis = txtnis.getText();
String nama = txtnama.getText();
String jk = cbjk.getSelectedItem().toString();
String kls = cbkelas.getSelectedItem().toString();
mod = (DefaultTableModel) tabel_siswa_alfalah.getModel();
Object[] data = new Object[4];
data[0]=nis;
data[1]=nama;
data[2]=jk;
data[3]=kls;
mod.addRow(data);
}


Pada Button RESET klik kanan --> klik Event --> Action --> ActionPerformed 
Ketik script di bawah ini :
private void btnresetActionPerformed(java.awt.event.ActionEvent evt) {
txtnis.setText("");
txtnama.setText("");


Pada Button HAPUS klik kanan --> klik Event --> Action --> ActionPerformed 
 
private void btnhapusActionPerformed(java.awt.event.ActionEvent evt) {
for( int i = mod.getRowCount() - 1; i >= 0; i-- )
{
mod = (DefaultTableModel) tabel_siswa_alfalah.getModel();
mod.removeRow(i);
}
}


Selanjutnya coba kita jalankan Program Klik Run --> Run File 

Kita input Nis : 001
Nama : SOBIRIN
Jenis Kelamin : Laki Laki
Kelas X/A
Selanjutnya kita tekan tombiol SIMPAN maka data tersimpan pada tabel
 
Kita input Nis : 002
Nama : HOIRUL
Jenis Kelamin : Laki Laki
Kelas X/A
Selanjutnya kita tekan tombiol SIMPAN maka data tersimpan pada tabel
  
 
Kita input Nis : 003
Nama : AMELIA PUTRI
Jenis Kelamin : Perempuan
Kelas X/B
Selanjutnya kita tekan tombiol SIMPAN maka data tersimpan pada tabel
 

Kita input Nis : 004
Nama : AFIYAH
Jenis Kelamin : Perempuan
Kelas X/B
Selanjutnya kita tekan tombiol SIMPAN maka data tersimpan pada tabel
  
Selesai

PELAKSANAAN PRAKTIKUM
BUKU HALAMAN : 292 s/d 298 
APLIKASI SEWA KAMAR HOTEL SMK AL FALAH KRATON
1.Klik Start pada pojok kiri bawah --> Buka Aplikasi Netbeans IDE 6.9.1

2. Proses loading program Netbeans IDE 6.9.1
3. Klik File --> pilih --> New Project 
4.Pada Categories Klik JAVA Projects pilih JavaApplication
Pada menu New Java Application terdapat field-field yang digunakan untuk memberi nama Project kita dan juga lokasi untuk penyimpanan Project tersebut.
Untuk Project Name ganti dengan nama yang akan anda berikan untuk project anda, misalnya memberi nama project hotel
untuk membuat project name tanpa (Spasi) usahakan untuk menggunakan pemisah lain seperti low line/ under score (_).
Dan untuk Project Location tentukan lokasi folder untuk penyimpanan project tersebut, disitu saya arahkan ke lokasi folder yang bernama Netbeans yang berlokasikan di Documents:
NetBeansProjects
Biarkan yang lainnya sesuai Default jangan diubah, jika sudah memberi nama dan lokasi yang diinginkan, selanjutnya klik Finish
 
5. Klik NEXT untuk melanjutkan :
6. Pada Project Name : ganti dengan nama "hotel
7. Selanjutnya Klik " Finish "
8. Klik kanan pada Source Package -->klik-->New --> Pilih Jframe Form
9. Dengan Nama : form_hotel Selanjutnya --> Klik Finish  
10.Desain Area Form sebagai Berikut : 

Desain properties dalam Form sbb :
1. Klik pada Pallets Jlabel 10 Label
1. Jlabel1
--> Edit Text --> APLIKASI SEWA KAMAR HOTEL SMK AL FALAH KRATON
2. Jlabel2 
--> Edit Text --> Nama Pengunjung
3. Jlabel3 
--> Edit Text --> Alamat
4. Jlabel4 
--> Edit Text --> Tipe Kamar
5. Jlabel5 
--> Edit Text --> Kamar No
6. Jlabel6
--> Edit Text --> Sewa Kamar Perhari
7. Jlabel7 
--> Edit Text --> Lama Inap
8. Jlabel8 
--> Edit Text --> Sub Total
9. Jlabel9 
--> Edit Text --> Diskon
10. Jlabel10 
--> Edit Text --> Total

2. Klik pada Pallets Text Field 7 Text field
1. Text Field 1 
--> Chang Variabel Name --> txtnama
2. Text Field 2
--> Chang Variabel Name --> txtalamat
3. Text Field 3 
--> Chang Variabel Name --> txtswakamar
4. Text Field 4
--> Chang Variabel Name --> txtlama
5. Text Field 5 
--> Chang Variabel Name --> txtsubtotal
6. Text Field 6 
--> Chang Variabel Name --> txtdiskon
7. Text Field 7 --> Chang Variabel Name --> txttotal

1. Klik pada Pallets ComboBox 2 ComboBox
1. ComboBox 1
--> Chang Variabel Name --> cbtipekamar
2. ComboBox 2 
--> Chang Variabel Name --> cbnokamar

2. Klik pada Pallets Button 2 Button
1. Button 1
--> Chang Variabel Name --> cmdhitung
2. Button 2 
--> Chang Variabel Name--> cmbatal

Jika selesai mendesain Form selanjutnya kita ketik script di bawah ini : 
Pada Package
package hotel; 
import Konfigurasi.Konek;
import java.awt.event.KeyEvent;
import javax.swing.JOptionPane; 
import java.sql.Connection;
import java.sql.SQLException;
import javax.swing.table.DefaultTableModel;
import java.sql.PreparedStatement;
// Teks warna biru script untuk koneksi ke database 

Pada Class hotel
public class form_hotel extends javax.swing.JFrame {
double sewa, lama, diskon, subtotal, total; 
private DefaultTableModel DftTblModel_hotel;
private String SQL;
public void TampilData() {
DftTblModel_hotel = new DefaultTableModel();
DftTblModel_hotel.addColumn("NAMA");
DftTblModel_hotel.addColumn("ALAMAT");
DftTblModel_hotel.addColumn("TYPE KAMAR");
DftTblModel_hotel.addColumn("NO KAMAR");
DftTblModel_hotel.addColumn("SEWA KAMAR");
ftTblModel_hotel.addColumn("LAMA INAP");
DftTblModel_hotel.addColumn("SUB TOTAL");
DftTblModel_hotel.addColumn("DISKON");
DftTblModel_hotel.addColumn("TOTAL BAYAR");
tabel_hotel.setModel(DftTblModel_hotel);
Connection conn = Konek.getConnection();
try {
java.sql.Statement stmt = conn.createStatement();
SQL = "select * from hotel";
java.sql.ResultSet res = stmt.executeQuery(SQL);
while (res.next()) {
DftTblModel_hotel.addRow(new Object[]{
res.getString("nama"),
res.getString("alamat"),
res.getString("tipe_kamar"),
res.getString("no_kamar"),
res.getString("sewa_kamar"),
res.getString("lama_inap"),
res.getString("sub_total"),
res.getString("diskon"),
res.getString("total"),
});
}
} catch (SQLException e) {
System.out.println(e.getMessage());
}}
// Teks warna biru script untuk koneksi ke database 

Tampilan Form agar pada posisi di tengah ketika di RUN
public hotel () {
initComponents();
setLocationRelativeTo(this); 
this.TampilData();
Pada --> Text Field Lama Inap klik àEvent --> Focus --> FocusLost
private void txtlamaFocusLost(java.awt.event.FocusEvent evt) {
lama=Double.parseDouble(txtlama.getText());
if (lama == 2)
{
txtdiskon.setText("2");
}
else if ((lama <= 4) && (lama > 2))
{
txtdiskon.setText("2.5");
}
else if (lama > 4)
{
txtdiskon.setText("4");
}
else
{
txtdiskon.setText("0");
}
sewa=Double.parseDouble(txtsewakamar.getText());
subtotal=lama*sewa;
txtsubtotal.setText (""+subtotal); 
Combobox Type Kamar klik --> Event --> Action Performed
private void cbtipekamarActionPerformed(java.awt.event.ActionEvent evt) {

if (cbtipekamar.getSelectedItem().
equals("Mawar"))
{
cbnokamar.removeAllItems();
cbnokamar.addItem ("--Pilih No Kamar --");
cbnokamar.addItem("A.101 ");
cbnokamar.addItem("A.102 ");
txtsewakamar.setText("200000");
}
else if (cbtipekamar.getSelectedItem().equals("Melati"))
{
cbnokamar.removeAllItems();
cbnokamar.addItem ("--Pilih No Kamar --");
cbnokamar.addItem("B.201 ");
cbnokamar.addItem("B.202 ");
txtsewakamar.setText("240000");
}
else if (cbtipekamar.getSelectedItem().equals("Anggrek"))
{
cbnokamar.removeAllItems();
cbnokamar.addItem ("--Pilih No Kamar --");
cbnokamar.addItem("C.301 ");
cbnokamar.addItem("C.302 ");
txtsewakamar.setText("310000");
}
Text Field Nama klik --> Event --> key --> KeyPressed
private void txtnamaKeyPressed(java.awt.event.KeyEvent evt) {

if (evt.getKeyCode() == KeyEvent.VK_ENTER)
{
JOptionPane.showMessageDialog(null, "Tombol Enter di Tekan");
txtalamat.requestFocus();
}
Button Hitung klik -->Event --> Action Performed
private void btnhitungActionPerformed(java.awt.event.ActionEvent evt) {

subtotal=Double.
parseDouble(txtsubtotal.getText());
diskon=Double.parseDouble(txtdiskon.getText());
diskon=subtotal*(diskon/100);
total=subtotal-diskon;
txttotal.setText("Rp."+total);
Button Batal klik Event --> Action Performed
private void btnbatalActionPerformed(java.awt.event.ActionEvent evt) {

txtnama.setText("");
txtnama.requestFocus();
txtalamat.setText("");
txtdiskon.setText("");
txtlama.setText("");
txtsewakamar.setText("");
txtsubtotal.setText("");
txttotal.setText("");
Keterangan :
Beberapa ketentuan Logika ketika Program di jalankan :
Kita hanya menginputkan Nama Pengunjung dan Alamat pada Text Field
1. Pada ComboBox Type Kamar klik pilihan Kamar :
a. Mawar ,dengan No Kamar A.101 dan A.102 dengan Tarif Rp.200.000
b. Melati ,dengan No Kamar B.201 dan B.202 dengan Tarif Rp.240.000
c. Anggrek ,dengan No Kamar C.301 dan C.302, dengan Tarif Rp.310.000

2. Pada Text Field Lama inap
a. Jika lama menginap selama 2 hari akan mendapatkan diskon 2 %
b. Jika lama menginap lebih dari 2 hari sampai 4 hari akan mendapatkan diskon 2,5 %
c. Jika lama menginap lebih dari 4 hari akan memperoleh diskon 4 %
3. Sub Total adalah sewa kamar di kalikan lama menginap 4. Total adalah subtotal di kurangi nilai diskon
1. Selanjutnya kita tekan tombol Hitung maka Hasilnya
2. Jika kita memilih Type Kamar Anggrek maka tarif Kamar Rp.310.000,-
3. Jika lama inap selama 4 hari secara otomatis mendapatkan Diskon 2,5 %
4. Maka total pembayaran sebesar Rp.1.209.000,-

  Selesai 

Form di koneksikan dengan database Xampp MySql 
agar data tersimpan di Directory Database
Langkah selanjutnya kita klik --> Local : C Klik --> xampp 
Klik --> xampp - control
Klik --> Start untuk menjalankan Apache dan Start MySql

 
Jika keduanya sudah menunjukkan Running berarti Apache dan MySql sudah berjalan
Selanjutnya kita buka Monzilla Firefox atau Google Chrome
Ketik di browser : localhost/xampp
Klik --> phpMyAdmin  seperti gambar di bawah.
Halaman untuk membuat database baru ketik di texbox Creat new database
Buat Data Base dengan nama : db_smk_alfalah  Klik --> Creat
Kemudian membuat tabel dengan nama : hotel
Pada Number Field di isi : 9 --> Kemudian klik “ Go “ pada bagian pojok bawah

Field 1 di isi : nama, type  VARCHAR , Lenght/Value --> 30
Field 2 di isi : alamat, type   VARCHAR , Lenght/Value --> 30
Field 3 di isi : tipe_kamar, type   VARCHAR , Lenght/Value --> 30
Field 4 di isi : no_kamar, type   VARCHAR , Lenght/Value --> 30
Field 5 di isi : sewa_kamar, type   VARCHAR , Lenght/Value --> 30
Field 6 di isi : lama_inap , type   VARCHAR , Lenght/Value --> 30
Field 7 di isi : sub_total , type   VARCHAR , Lenght/Value --> 30
Field 8 di isi : diskon, type   VARCHAR , Lenght/Value --> 30
Field 9 di isi : total , type   VARCHAR , Lenght/Value --> 30
Klik “ Save “ pada bagian pojok bawah

Tampilan halaman tabel 
Buka Netbeans IDE 6.9.1
membuat package baru dengan nama : Konfigurasi
membuat class baru dengan nama : Konek untuk koneksi ke database
Ketik script di bawah ini untuk koneksi ke database
package konfigurasi;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Konek {
public static Connection getConnection() {
Connection conn = null;
String url = "jdbc:mysql://localhost/db_smk_alfalah";
String user = "root";
String password = "";
try {
conn = DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
System.out.println(e);
}
return conn;
}
public static void main(String[] args) {
try {
Connection c = Konek.getConnection();
System.out.println(String.format("Connected to database %s " + " BERHASIL KONEK DENGAN DATA BASE .", c.getCatalog()));
} catch (SQLException e) {
System.out.println(e);
} } }
Selanjutnya kita RUN jika tampilannya seperti gambar di bawah ini Database terkoneksi


IMPORT MY SQL JDBC DRIVER
Klik Kanan pada Library --> Add Library

Kemudian Klik MY SQL JDBC Driver --> Klik --> Add Library

Akan Tampil File : MySQL JDBC Driver seperti gambar di bawah ini.

Tambahkan pada Form button : SIMPAN, HAPUS, EDIT dan TABEL

Pada Button SIMPAN klik --> Event -->  Action Performed
private void btnsimpan2ActionPerformed(java.awt.event.ActionEvent evt) { 
// script  untuk menyimpan data 
try {
Connection conn = Konek.getConnection();
PreparedStatement stmt = conn.prepareStatement("insert into hotel(nama, alamat, tipe_kamar, no_kamar,sewa_kamar,lama_inap,sub_total, diskon, total) values(?,?,?,?,?,?,?,?,?)");
stmt.setString(1, txtnama.getText());
stmt.setString(2, txtalamat.getText());
stmt.setString(3, cbtipekamar.getSelectedItem().toString());
stmt.setString(4, cbnokamar.getSelectedItem().toString());
stmt.setString(5, txtsewakamar.getText());
stmt.setString(6, txtlama.getText());
stmt.setString(7, txtsubtotal.getText());
stmt.setString(8, txtdiskon.getText());
stmt.setString(9, txttotal.getText());
stmt.executeUpdate();
JOptionPane.showMessageDialog(null, "Data berhasil di SIMPAN ", "Pesan", JOptionPane.INFORMATION_MESSAGE);
TampilData();
} catch (SQLException e) {
System.out.println(e.getMessage());
Pada Button HAPUS klik --> Event --> Action Performed
private void btnhapusActionPerformed(java.awt.event.ActionEvent evt) { 
// script  untuk menghapus data  
Connection conn = Konek.getConnection();
int confirm = JOptionPane.showConfirmDialog(null, "Apakah anda yakin ingin Menghapus data tersebut....?", "Konfirmasi", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (confirm == 0) {
try {
java.sql.PreparedStatement stmt = conn.prepareStatement("delete from hotel where nama ='" + txtnama.getText() + "'");
stmt.executeUpdate();
JOptionPane.showMessageDialog(null, "Data berhasil di HAPUS ", "Pesan", JOptionPane.INFORMATION_MESSAGE);
TampilData();
txtnama.setText("");
txtalamat.setText("");
cbtipekamar.setSelectedItem(null);
cbnokamar.setSelectedItem(null);
txtsewakamar.setText("");
txtlama.setText("");
txtsubtotal.setText("");
txtdiskon.setText("");
txttotal.setText("");
txtnama.requestFocus();
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, "Data gagal di HAPUS" + e.getMessage(), "Pesan", JOptionPane.ERROR_MESSAGE);
} } 
Pada Button EDIT klik --> Event --> Action Performed
private void btneditActionPerformed(java.awt.event.ActionEvent evt) { 
// script  untuk mengupdate data (edit)
try {
Connection conn = Konek.getConnection();
PreparedStatement stmt = conn.prepareStatement("update hotel set alamat=?, tipe_kamar=?, no_kamar=?,sewa_kamar=?,lama_inap=?,sub_total=?,diskon=?,total=? where nama=?");
stmt.setString(1, txtalamat.getText());
stmt.setString(2, cbtipekamar.getSelectedItem().toString());
stmt.setString(3, cbnokamar.getSelectedItem().toString());
stmt.setString(4, txtsewakamar.getText());
stmt.setString(5, txtlama.getText());
stmt.setString(6, txtsubtotal.getText());
stmt.setString(7, txtdiskon.getText());
stmt.setString(8, txttotal.getText());
stmt.setString(9, txtnama.getText());
stmt.executeUpdate();
JOptionPane.showMessageDialog(null, "Data berhasil di EDIT", "Pesan", JOptionPane.INFORMATION_MESSAGE);
TampilData();
} catch (SQLException e) {
System.out.println(e.getMessage());
Pada TABEL klik --> Event --> Mouse --> MouseClicked
­­private void tabel_hotelMouseClicked(java.awt.event.MouseEvent evt) {
int baris = tabel_hotel.getSelectedRow();
txtnama.setText(DftTblModel_hotel.getValueAt(baris, 0).toString());
txtalamat.setText(DftTblModel_hotel.getValueAt(baris, 1).toString());
cbtipekamar.setSelectedItem(DftTblModel_hotel.getValueAt(baris, 2).toString());
cbnokamar.setSelectedItem(DftTblModel_hotel.getValueAt(baris, 3).toString());
txtsewakamar.setText(DftTblModel_hotel.getValueAt(baris, 4).toString());
txtlama.setText(DftTblModel_hotel.getValueAt(baris, 5).toString());
txtsubtotal.setText(DftTblModel_hotel.getValueAt(baris, 6).toString());
txtdiskon.setText(DftTblModel_hotel.getValueAt(baris, 7).toString());
txttotal.setText(DftTblModel_hotel.getValueAt(baris, 8).toString());

Hasil aplikasi program jika di jalankan
Kita coba inputkan 
1. Nama : IKRIMAH
2. Alamat : CURAHDUKUH
3. Jika kita memilih Type Kamar Anggrek pilih nomor Kamar C.302
4. Maka tarif kamar sebesar  Rp.310.000,- 
5. Jika lama inap selama 4 hari
6. Maka subtotal sebesar  Rp.1.240.000 secara otomatis mendapatkan Diskon 2,5 % 
7. Tekan tombol  Hitung
8. Maka total pembayaran sebesar Rp.1.209.000,- karena mendapat Diskon 2,5 % 
9. Tekan tombol  Simpan tampil kotak dialog Data Berhasil di SIMPAN
10. Tekan OK maka data tersimpan pada Tabel



Kita coba lagi inputkan 
1. Nama : FAIZIN
2. Alamat : SELOTAMBAK 
3. Lama inap : 2 hari
4. Jika kita memilih Type Kamar Melati maka tarif Kamar Rp.240.000,-
5. Jika lama inap selama 2 hari secara otomatis mendapatkan Diskon 2%  
6. Maka total pembayaran sebesar Rp.470.400,-  
7. Tekan tombol SIMPAN 
Tekan tombol kotak dialog Simpan 
Maka data tersimpan pada tabel

Kita coba sekali lagi inputkan 
1. Nama : SOBIRIN
2. Alamat : SELOTAMBAK 
3. Tipe Kamar : Anggrek
4. Lama inap : 5 hari
5. Jika kita memilih Type Kamar Anggrek maka tarif Kamar Rp.310.000,-
6. Jika lama inap lebih dari 4 hari secara otomatis mendapatkan Diskon 4 %  
7. Tekan tombol SIMPAN akan muncul kotak dialog atau pesan Data Berhasil Tersimpan
8. Maka Total pembayaran sebesar Rp.1.488.000,- 
9. Maka data tersimpan pada tabel di bawah ini

10.Jika kita ingin mengubah atau meng-update  data tinggal Klik pada tabel maka akan tampil di Text Field 
11. Misalnya dari lama inap 4 hari ke 2 hari 
12. Maka diskon 2,5 % berubah menjadi 2 % 
13. Tarif Total dari Rp. 1,209,000,- menjadi Rp. 607.000,-
13. Selanjutnya tekan tombol EDIT 
14. Tampil kotak dialog klik OK maka data yang tersimpan di tabel  sudah berubah
15. Jika ingin Menghapus data tinggal Klik pada tabel maka akan tampil di Text Field
16. Tekan tombol HAPUS
17. Data file tabel tersimpan di Database MySql