SEKILAS PANDANG
Java merupakan bahasa pemrograman tingkat tinggi yang diciptakan berdasarkan turunan dari C++.
Target utama dari penggunaan bahasa Java adalah pengkodingan berarah objek yang simpel
(tidak memerlukan header), menghindari pemanipulasian pointer secara manual (otomatis), dan
lainnya. Kini, penggunaan Java sudah sangat banyak di perusahaan mengingat Java adalah cross-
platform dan bahkan cross-device.
Bentuk dasar (Anatomi) Console Application :
Program 1-1
public class Main {
public static void main(String[] args) {
System.out.println("Hello world!");
}
}
Hasil Output
Hello world!
Penjelasan :
public static void main(String[] args) {
Awal mula kode bermulai dari sini. Fungsi main() ini menandakan bahwa baris kode yang
dibawah ini akan dijalankan pertama kali secara otomatis ketika program dijalankan.
System.out.println("Hello world!");
Salah satu contoh baris kode yang mana ini digunakan untuk menampilkan ke console / layar. Perlu
diperhatikan bahwa di bagian akhir perlu diberikan semicolon (;) untuk menandakan akhir dari satu
baris kode. Serta, penulisan kode di Java membedakan huruf besar dan kecil (case-sensitive)
sehingga perlu berhati-hati akan huruf besar dan kecil ketika menulis baris kode.
Interpreter
Program.java Program.class
Compiler
Laptop
PLATFORM JAVA
Platform adalah lingkungan perangkat keras atau perangkat lunak dimana program dijalankan.
Secara umum platform dinyatakan berdasarkan nama sistem operasi yang digunakan, misalnya
Windows 8, Linux, Solaris, atau MacOS. Platform Java mempunyai dua komponen, yaitu:
Java Virtual Machine (JVM). Merupakan fondasi untuk platform Java yang dapat digunakan
diberbagai platform perangkat keras.
Java Application Programming Interface (Java API). Kumpulan komponen-komponen perangkat
lunak siap pakai (ready-made software components) untuk berbagai keperluan penulisan
program, seperti graphical user interface (GUI).
Gambar 1.2 berikut memperlihatkan gambaran program yang berjalan diatas kedua komponen
platform Java.
Program.java
Java API
Hardware-Based Platform
IDENTIFIER JAVA
Identifier adalah nama yang diberikan kepada variabel, method, kelas, paket, dan interface.
Tujuannya untuk mengidentifikasikan secara unik bagi kompilator dan memberikan nama yang
berarti bagi pemrogram. Aturan penamaan identifier:
Modul PBO – Teknokrat
5
Case sensitive, huruf kapital dan kecil dibedakan
Identifier tidak boleh sama dengan keyword yang ada di Java
Dimulai dengan huruf atau underscore (garis bawah) atau tanda ‘$’
Karakter berikutnya dapat berupa angka 0 sampai 9
Simbol-simbol seperti ‘+’ dan spasi tidak dapat digunakan.
KEYWORD JAVA
Keyword adalah identifier yang digunakan Java untuk suatu tujuan khusus. Tabel 1.1 berikut adalah
daftar keyword yang ada di Java.
TIPE DATA
Tipe data adalah klasifikasi antar data. Tujuannya adalah mencegah tercampurnya data lain yang
memiliki “bentuk” yang berbeda. Tipe data tersebut dapat disimpan dalam sebuah wadah yang
disebut variabel.
Berikut adalah tipe data yang dikenal di Java:
1. Boolean
Boolean adalah tipe data yang hanya menyatakan kondisi true (benar) dan false (salah). Boolean
pada dasarnya adalah representasi dari 1 (true) dan 0 (false).
2. Integer
Integer merupakan tipe data numerik yang bulat dan dapat dilakukan proses aritmatika. Adapun
tipe data yang sejenis adalah Byte, Long, Short. Perbedaannya adalah besaran bit yang dipakai.
3. Float
Type float digunakan untuk menangani bilangan pecahan.Tipe data jenis ini adalah Double untuk
angka yang lebih besar dan presisi lebih tinggi.
4. Karakter
Char adalah tipe data untuk karakter. Pada dasarnya karakter memiliki nomor indeks yang biasa
disebut ASCII code yang direpresentasikan sebagai angka. Sebagai contoh huruf ‘d’ memiliki nilai
100. Char dapat dilakukan operasi matematika seperti layaknya integer.
5. String
String adalah tipe data yang dapat menyimpan sederet karakter menjadi satu seperti layaknya
kalimat atau kata. Pada dasarnya string adalah sejenis array (sekumpulan) dari char yang
Program 1-2
public class TipeData {
public static void main(String[] args) {
// Tipe data boolean
boolean b=true;
System.out.println(b); // di layar akan menampilkan true
boolean c=false;
System.out.println(c); // di layar akan menampilkan false
// Tipe data integer
int a=3+4;
System.out.println(a); // di layar akan menampilkan angka 7
// Tipe data float
double d= Math.random();
System.out.println(d); // akan menampilkan angka random 0-1
// Tipe data karakter
char e='d'+1;
System.out.println(e); // akan menampilkan huruf e
// Tipe data string
String h= "Hello!";
System.out.println(h); // akan menampilkan tulisan Hello!
}
}
Hasil Output
true
false
7
0.489804915482581
e
Hello!
OPERATOR
Operator merupakan tanda yang digunakan untuk melakukan suatu operasi. Ada beberapa jenis
operator yang dapat digunakan, yaitu:
1. Operator Assignment
Operator assignment adalah operator yang melakukan pengisian nilai kepada suatu variabel
sehingga variabel yang telah dibuat jadi menyimpan suatu nilai.
2. Operator Aritmatik
Ada beberapa operator aritmetik yang sudah kita kenal, yaitu
Penjumlahan (+)
Pengurangan (-)
Pembagian (/)
Perkalian (*)
Modulus (sisa pembagian %)
Program 1-3
public class Operator {
public static void main(String[] args) {
// Operator assignment
double d;
d=3.14;
d=d+3.12; // Menambah 3.14 dengan 3.12
System.out.println(d); // menampilkan di layar angka 6.26
// Operator aritmatik
System.out.println("penambahan 3+5 = "+(3+5));
System.out.println("pengurangan 5-3= "+(5-3));
System.out.println("perkalian 5*5= "+(5*5));
System.out.println("pembagian 90/5= "+(90/5));
System.out.println("modulus 52%6= "+(52%6));
String h;
h="Wow"+ "Wohoo";
System.out.println(h);
// Operator logika
boolean i=false;
System.out.println(i==false); // menampilkan tulisan true
boolean j=false==false;
boolean k=true==false;
Hasil Output
6.26
penambahan 3+5 = 8
pengurangan 5-3 = 2
perkalian 5*5 = 25
pembagian 90/5 = 18
modulus 52%6 = 4
WowWohoo
true
false
true
true
KOMENTAR
Komentar dalam Java berupa sebuah blok untuk menerangkan/memberikan informasi pada
suatu kelas, field, method, dan lainnya agar orang lain dapat mengerti apa maksud dari kode
tersebut.
Bentuk umum komentar dalam Java ada dua:
/*…*/
// ...
Komentar tidak akan ikut dikompilasi menjadi program sehingga programmer tidak perlu khawatir
programnya akan membengkak karena terlalu banyak menuliskan penjelasan (komentar).
INPUT / OUTPUT
Dalam java dikenal juga dengan proses input dan proses output. Berikut adalah contoh program
untuk input dan output:
Hasil Output
Masukan nilai: 25
Nilai = 25
Penjelasan:
Baris kode berikut adalah baris kode yang digunakan untuk proses input atau proses pemberian nilai
pada sebuah variabel.
Perlu diperhatikan bahwa, ketika Scanner digunakan. Pada class yang sama juga harus terdapat baris
kode.
Baris tersebut berfungsi agar Scanner dapat didefinisikan pada class tersebut.
Nama: Nilai:
Kelas: Tanggal:
Soal
1. [Score: 50] Buat program yang meminta inputan jari-jari, yang kemudian dihitung dan
ditampilkan luas dan keliling lingkaran tersebut (Gunakan nilai π = 3.14).
Hasil Output
Jari-jari lingkaran: 10
Luas lingkaran adalah 314
Keliling lingkarang adalah 62.8
2. [Score: 50] Buatlah program untuk menghitung harga total suatu barang yang sudah mendapat
diskon 15%, dimana jumlah barangnya dan harga perunit akan diinput oleh pengguna. Jumlah
harga akan ditampilkan sebagai output.
Hasil Output
STRUKTUR KONTROL 2
Tujuan
Praktikan dapat memahami, menjelaskan, dan menerapkan tentang struktur kontrol
percabangan dan pengulangan.
PERCABANGAN
Suatu Struktur dasar algoritma yang memiliki satu atau lebih kondisi tertentu dimana sebuah
instruksi dilaksanakan jika sebuah kondisi/persyaratan terpenuhi. Ada beberapa bentuk struktur
dasar operator pemilihan ini, yaitu:
Pernyataan if
Pernyataan if-else
Pernyataan switch-case
PERNYATAAN IF
Pernyataan if akan menentukan sebuah pernyataan (atau blok kode) yang akan eksekusi jika dan
hanya jika persyaratan bernilai benar (true). Bentuk dari pernyataan if,
if( boolean_expression )
statement;
atau
if( boolean_expression ){
statement1;
statement2;
. . .
}
dimana, boolean_expression adalah sebuah penyataan logika (true/false) atau variabel bertipe
boolean. Gambar 2.1 berikut merupakan diagram alur (flowchart) dari struktur pemilihan if.
Program 2-1
public class Percabangan {
public static void main(String [] args) {
// program untuk mencetak bilangan jika dibawah 10
int bil = 7;
if(bil < 10)
System.out.println("Angka " + bil + " kurang dari 10");
}
}
Hasil Output
Penjelasan:
Tampak bahwa jika nilai ‘bil’ lebih dari atau sama dengan 10, maka program tidak menghasilkan apa-
apa.
PERNYATAAN IF-ELSE
Pernyataan if-else digunakan apabila kita ingin mengeksekusi beberapa pernyataan dengan kondisi
true dan pernyataan yang lain dengan kondisi false. Bentuk pernyataan if-else,
if( boolean_expression )
statement;
else
statement;
Gambar 2.2 berikut merupakan diagram alur (flowchart) dari struktur pemilihan if-else.
Masing-masing if code dan else code dapat berupa sebuah pernyataan tunggal, pernyataan
majemuk ataupun pernyataann kosong.
Program 2-2
public class Percabangan {
public static void main(String [] args) {
int bil = 13;
if(bil < 10)
System.out.println("Angka " + bil + " kurang dari 10");
else
System.out.println("Angka " + bil + " lebih dari 10");
}
}
Hasil Output
Penjelasan:
Tampak bahwa jika nilai yang diberikan lebih dari atau sama dengan 10, maka program akan
memberi pesan “Angka … lebih dari 10”.
Sebagai catatan: anda dapat memiliki banyak blok else-if sesudah pernyataan if. Blok else bersifat
opsional dan dapat dihilangkan. Pada contoh yang ditampilkan di atas, jika boolean_expression1
bernilai true, maka program akan mengeksekusi statement1 dan melewati pernyataan yang lain. Jika
boolean_expression2 bernilai true, maka program akan mengeksekusi statement2 dan melewati
statement3.
Program 2-3
public class Percabangan2 {
public static void main(String [] args) {
int na; // nilai akhir
char hm; // huruf mutu
na = 88;
if(na > 85) { hm = 'A'; }
else if(na > 75) { hm = 'B'; }
else if(na > 65) { hm = 'C'; }
else if(na > 55) { hm = 'D'; }
else { hm = 'E'; }
System.out.println("Huruf Mutu = " + hm);
}
}
Hasil Output
Huruf Mutu = A
PERNYATAAN SWITCH-CASE
Cara lain untuk membuat cabang adalah dengan menggunakan kata kunci switch. Switch
mengkonstruksikan cabang untuk beberapa kondisi dari nilai. Bentuk pernyataan switch,
switch( switch_expression ){
case case_selector1:
statement1; //
statement2; //block 1
. . . //
break;
case case_selector2:
statement1; //
statement2; //block 2
. . . //
break;
Switch expression adalah ekspresi integer atau karakter dan case_selector1, case_selector2 dan
seterusnya adalah konstanta unik dari nilai integer atau karakter.
Ketika pernyataan switch ditemukan pada potongan kode program, compiler pertamakali akan
memeriksa switch_expression, dan menuju ke case yang akan menyamakan nilai yang dimiliki oleh
switch_expression.
Selanjutnya program akan mengeksekusi pernyataan pada dari kode setelah case yang ditemukan
sampai menemui pernyataan break, selanjutnya akan mengabaikan pernyataan yang lainnya hingga
akhir dari struktur dari pernyataan switch.
Jika tidak ditemui case yang cocok, maka program akan mengeksekusi blok default. Sebagai catatan,
bahwa bagian blok default adalah opsional. Sebuah pernyataan switch bisa jadi tidak memiliki blok
kode default. Gambar 2.3 berikut merupakan diagram alur (flowchart) dari struktur pemilihan
switch-case.
Program 2-4
public class Percabangan3 {
public static void main(String [] args) {
int no_hari = 3;
String nama_hari;
switch(no_hari) {
case 1: nama_hari = "Minggu"; break;
case 2: nama_hari = "Senin"; break;
case 3: nama_hari = "Selasa"; break;
case 4: nama_hari = "Rabu"; break;
case 5: nama_hari = "Kamis"; break;
Hasil Output
PENGULANGAN
Suatu Struktur yang terdiri dari sebuah atau sekelompok instruksi yang diulang untuk jumlah
tertentu. Baik yang terdefinisikan ataupun tidak. Struktur pengulangan terdiri atas dua bagian, yaitu
kondisi pengulangan dan isi/badan pengulangan. Kondisi pengulangan berupa ekspresi boolean yang
harus dipenuhi untuk melaksanakan pengulangan. Isi atau badan pengulangan berupa satu atau
lebih pernyataan (aksi) yang akan diulang.
PERNYATAAN FOR
Pernyataan for digunakan untuk menghasilkan pengulangan (looping) beberapa kali tanpa
penggunaan kondisi apapun. Pada umumnya looping yang dilakukan oleh for telah diketahui batas
awal, syarat looping dan perubahannya. Selama kondisi terpenuhi, maka pernyataan akan terus
dieksekusi. Diagram alir untuk pernyataan for dapat dilihat pada Gambar 2.4. Bentuk pernyataan for:
for(inisialisasi; kondisi; iterasi){
pernyataan;
}
Hasil Output
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Pada contoh yang melibatkan pernyataan for di atas (Program 2-5), kenaikan variabel pengendali
loop berupa nilai positif. Sebenarnya kenaikan terhadap variabel pengendali loop bisa diatur bernilai
negatif. Berikut adalah contoh programnya:
Program 2-6
public class Pengulangan {
public static void main(String [] args) {
// Program untuk mencetak bilangan 15 - 1
for(int i=15; i>=1; i--) {
System.out.print(i + " ");
}
}
}
Hasil Output
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Pernyataan for dapat berada di dalam pernyataan for lainnya yang biasa disebut nested for. Berikut
contoh programnya:
Program 2-7
public class Pengulangan2 {
public static void main(String [] args) {
int tinggi = 4;
System.out.println("Tinggi Segitiga: " + tinggi);
for(int i=0; i<=tinggi; i++) {
for(int j=0; j<i; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
Tinggi Segitiga: 4
*
**
***
****
PERNYATAAN WHILE
Pernyataan while merupakan salah satu pernyataan yang berguna untuk memproses suatu
pernyataan atau beberapa pernyataan beberapa kali. Pada pernyataan ini pengecekan terhadap
loop dilakukan di bagian awal (sebelum tubuh loop). Pernyataan while memungkinkan statemen-
statemen yang ada didalamnya tidak diakukan sama sekali. Bentuk pernyataan while:
while (kondisi){
pernyataan;
}
Berdasarkan Gambar 2.5, dapat dilihat bahwa ada kemungkinan statement tidak dijalankan sama
sekali, yaitu apabila hasil pengujian condition yang pertama kali bernilai false.
Program 2-8
public class Pengulangan3 {
public static void main(String [] args) {
int bil = 10;
while(bil <= 20) { System.out.print(bil + " "); bil += 2; }
}
}
Hasil Output
10 12 14 16 18 20
Lembar Kerja Praktikum: Modul 2
Nama: Nilai:
Kelas: Tanggal:
Soal
1. [Score: 35] Buatlah program untuk mencetak segitiga seperti berikut (gunakan perulangan while
atau for):
Hasil Output
****
***
**
*
2. [Score: 30] Buatlah program untuk menentukan apakah bilangan yang dimasukan genap atau
ganjil:
Hasil Output
Masukan angka: 33
3. [Score: 35] Buatlah program untuk menentukan nilai tertinggi, terendah, dan rata-rata untuk lima
bilangan yang dimasukan:
Hasil Output
Bilangan 1: 33
Bilangan 2: 25
Bilangan 3: 17
Bilangan 4: 44
Bilangan 5: 10
Min: 17
Max: 44
Rata: 25.8