Diktat Pemrograman I (Java Dasar)
Diktat Pemrograman I (Java Dasar)
PEMROGRAMAN I
(JAVA DASAR)
Oleh:
M. Dermawan Mulyodiputro, S.Si., M.Cs.
SEJARAH JAVA
Dalam Bahasa Pemrograman Open Source. Java sedang banyak di pelajari oleh banyak orang
karena Java memiliki konsep yang sangat kuat dan mengacu pada oop (obyek oriented
programming). Untuk lebih mengenal dengan Bahasa Pemrograman Java kita pelajari terlebih
dahulu Sejarah Bahasa Pemrograman Java.
Sejarah bahasa pemrograman java di mulai pada tahun 1991. Sekelompok insinyur Sun di pimpin
oleh Patrick Naughton dan James Gosling yang mempunyai tujuan untuk merancang bahasa
computer untuk perangkat consumer seperti cable tv box. Karena perangkat tersebut tidak
memiliki banyak memori, bahasa harus berukuran kecil dan mengandung kode yang liat. Juga
karena manufaktur manufaktur berbeda memilih processor yang berbeda pula, maka bahasa
harus bebas dari manufaktur manapun. Proyek diberi nama kode Green.
Kebutuhan untuk fleksibilitas, kecil, liat dan kode yang netral terhadap platform mengantar tim
mempelajari implementasi Pascal yang pernah dicoba. Niklaus Wirth, pencipta bahasa Pascal
telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin hipotesis.
Mesin ini sering disebut dengan mesin maya (virtual machine). Kode ini kemudian dapat
digunakan di sembarang mesin yang memiliki interpreter. Proyek Green menggunakan mesin
maya untuk mengatasi isu utama tentang netral terhadap arsitektur mesin.
Sejarah bahasa pemrograman java terbentuk karena orang-orang di proyek Green berbasis C++
dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi objek
dan bukan prosedural. Mulanya bahasa yang diciptakan diberi nama Oak oleh James Gosling
yang mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya, namun
dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada
sebelumnya, kemudian SUN menggantinya dengan Java. Nama Java sendiri terinspirasi pada saat
mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak
sengaja salah satu dari mereka menyebutkan kata Java yang mengandung arti asal bijih kopi.
Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan nama
Java.
Masih pada fieldset User Variables, tambahkan user variable lagi dengan pilih New.
Variable name : PATH
Variable value : %PATH%;%JAVA_HOME%\bin
Klik OK
Catatan : untuk variable value JAVA_HOME disesuaikan dengan path direktori ketika
instal JDK.
3. Restart Komputer.
4. Cara memastikan setttingan JDK berhasil bisa dicek di command prompt, buka
CMD(Command Prompt) lalu ketikan Java, maka akan muncul dibawah ini:
Jika semua command berjalan sesuai yang diatas maka Instalasi Java dengan setting path sukses
di lakukan.
Setelah di-save buka command prompt. Lalu cari path url file Hello.java tadi. Kemudian lakukan
penulisan execute file java:
1. [path_url_file]>javac Hello.java
2. [path_url_file]>java Hello
COMMENT
Comments merupakan catatan yang ditulis pada sebuah code untuk tujuan dokumentasi. Catatan
tersebut bukanlah bagian dari program dan tidak mempengaruhi jalannya program.
3 Tipe comment pada Java yaitu: C++ Style Comment, C Style Comment, dan Special Javadoc
Comment.
1. C++-Style Comment
C++ Style comments diawali dengan tanda //
Semua text sesudah // merupakan sebuah comment
Contoh:
// Ini adalah C++ style atau single line comments
2. C-Style Comments
C-style comment disebut juga multiline comment, diawali dengan tanda /* dan
diakhiri dengan tanda */.
Semua text yang berada antara dua tanda tersebut adalah comment.
Tidak seperti C++ style comment, C-Style comment dapat menampung banyak
baris sekaligus.
Contoh:
/* Ini adalah contoh dari C style atau multiline comments
*/
STATEMENT
Statement merupakan satu atau beberapa baris code diakhiri dengan sebuah tanda ; (titik koma).
Contoh:
System.out.println(Hello world);
BLOCK
Block adalah satu atau beberapa statement yang berada diantara tanda kurung kurawal buka dan
tanda kurung kurawal tutup yang mengelompokkan beberapa statement ke dalam sebuah unit.
Block statement dapat disarangkan tidak terbatas. Beberapa spasi kosong diperbolehkan.
Contoh:
public static void main( String[]args ){
System.out.println("Hello");
System.out.println("world);
}
Anda sebaiknya memasukkan statement pada baris selanjutnya setelah awal dari block.
Contohnya:
public static void main( String[] args ){
System.out.println("Hello");
System.out.println("world");
}
IDENTIFIER
Identifier Adalah token (tanda) yang mewakili nama dari variabel, method, class, dll. Contoh dari
identifier adalah: Hello, main, System, out.
Java identifier adalah case-sensitive. Hal ini berarti bahwa identifier Hello tidak sama dengan
hello.
Identifier harus diawali dengan huruf, tanda garis bawah _, tanda dolar $. Huruf dapat
menggunakan huruf kecil atau huruf kapital. Karakter selanjutnya dapat menggunakan angka dari
0 sampai 9.
Identifier tidak dapat menggunakan kata kunci Java (Java keyword) seperti class, public, void,
dll.
Untuk penamaan class, gunakan huruf kapital pada huruf awal dari nama class, contohnya:
ThisIsAnExampleOfClassName
Untuk nama dari method dan variabel, huruf awal menggunakan huruf kecil. Contohnya:
thisIsAnExampleOfMethodName
Pada saat memberikan nama identifier lebih dari satu kata, gunakan huruf kapital untuk
menunjukkan huruf awal dari kata selanjutnya kecuali kata awal. Contohnya:
charArray, fileNumber, ClassName.
Hindari penggunaan garis bawah pada awal identifier seperti _read atau _write.
KEYWORD
Keyword adalah identifier khusus yang sudah disediakan oleh Java untuk tujuan tertentu. Anda
tidak dapat menggunakan keyword sebagai nama dari variabel, class, method, dll.
Berikut adalah daftar dari Keyword:
LITERALS
Literals adalah tanda bahwa tidak terjadi perubahan atau konstan. Beberapa Literals dalam Java
yaitu:
1. Integer Literals
Integer literals dibedakan dalam beberapa format yang berbeda: desimal (berbasis 10),
heksadesimal (berbasis 16), and oktal (berbasis 8). Dalam penggunaan tipe data integer
pada program, kita harus mengikuti aturan penggunaan beberapa notasi khusus.
Untuk angka desimal, kita tidak memerlukan notasi khusus. Kita hanya menulis angka
desimal seperti apa adanya. untuk angka heksadesimal, hal itu harus ditandai oleh 0x
atau 0X. untuk oktal, ditandai oleh0.
Sebagai contoh, mewakili angka 12. Penulisan dalam bentuk desimalnya adalah 12,
Sementara dalam heksadesimal, menjadi 0xC, dan dalam oktal, nilai tersebut sama
dengan 014.
Default tipe data untuk integer literals adalah int. Int adalah signed 32-bit value. Pada
kasus-kasus tertentu Anda dapat berharap untuk memaksa integer literal untuk menjadi
tipe data long dengan menambahkan karakter l or L. tipe data long ditandai oleh
ditampilkannya data dalam 64-bit.
2. Floating-Point Literals
Floating point literals mewakili bentuk desimal dengan bagian yang terpisah. Sebagai
contoh adalah 3.1415. Floating point literals dapat dinyatakan dalam notasi standard atau
scientific. Sebagai contoh, 583.45 dinyatakan dalam notasi standard, Sementara 5.8345e2
dinyatakan dalam notasi scientific. Default Floating point literals mempunyai tipe data
double yang dinyatakan dalam 64-bit. Untuk menggunakan ketelitian yang lebih kecil
(32-bit) float, hanya dengan menambahkan karakter f atau F.
3. Boolean Literal
Boolean literals hanya memiliki dua nilai, true atau false.
4. Character Literals
Character Literals diwakili oleh karakter single Unicode. Karakter Unicode adalah 16-bit
character set yang menggantikan 8-bit ASCII character set. Unicode memungkinkan
penggunaan simbol dan karakter khusus dari bahasa lain. Untuk menggunakan character
literals, karakter tersebut di dalam tanda single pute ( ) (single quote delimiters). Sebagai
contoh huruf a, diwakili sebagai a. Untuk menggunakan karakter khusus seperti karakter
baris baru, backslash digunakan diikuti dengan karakter kode. Sebagai contoh, \n untuk
karakter baris baru atau ganti baris, \r untuk menyatakan nilai balik (carriage return),
\b untuk backspace.
5. String Literals
String literals mewakili beberapa karakter dan dinyatakan dalam tanda double pute ( )
(double quotes). Sebagai contoh string literal adalah, Hello World.
10
Contoh yang ditunjukkan diatas, mendeklarasikan variabel yang dinamai result sebagai
tipe data boolean dan memberinya nilai true.
2. Teksual char
Tipe data character (char), diwakili oleh karakter single Unicode. Tipe data ini harus
memiliki ciri berada dalam tanda single quotes ( ). Sebagai contoh:
a //Huruf a
\t //A tab
Untuk menampilkan karakter khusus seperti (single quotes) atau (double quotes),
menggunakan karakter escape \. Sebagai contoh:
\ //untuk single quotes
\ //untuk double quotes
Meskipun String bukan merupakan tipe data primitif (namun merupakan suatu Class),
String mewakili tipe data yang terdiri atas beberapa karakter. Mereka tidak termasuk tipe
data primitif, melainkan suatu class. Mereka memiliki literal yang terdapat diantara tanda
double quotes ( ).
Sebagai contoh:
String message=Hello world!
Integral memiliki default tipe data yaitu int. Anda dapat merubahnya ke bentuk long
dengan menambahkan huruf l atau L. Tipe data integral memiliki range sebagai berikut:
11
Pada contoh yang ditunjukkan diatas, 23 setelah E pada contoh kedua bernilai positif.
Contoh tersebut sama dengan 6.02E+23. Tipe data Floating-point memiliki range sebagai
berikut:
12
VARIABEL
Variabel adalah item yang digunakan data untuk menyimpan pernyataan objek. Variabel
memiliki tipe data dan nama. Tipe data menandakan tipe nilai yang dapat dibentuk oleh variabel
itu sendiri. Nama variabel harus mengikuti aturan untuk identifier.
Syarat-syarat penamaan variabel adalah:
1. Harus diawalai dengan huruf.
2. Tidak boleh terdapat karakter unik seperti @, #, % dan lain-lain.
3. Tidak boleh mengandung karakter putih (spasi, enter, tab).
1.
Catatan: Nilainya berada diantara <> adalah nilai yang disyaratkan, sementara nilai dalam tanda
[] bersifat optional.
Tipe variabel dapat berupa tipe data atau kelas, misalnya :
int nilai;
char indexNilai;
Untuk menambahkan nilai ke sebuah variabel, maka dapat menggunakan tanda = (sama dengan) ,
misal jika kita akan menambahkan nilai 100 pada variabel nilai dan A pada variabel indexNilai, maka
dapat terlihat pada kode dibawah ini:
int nilai;
char indexNilai;
nilai = 100;
indexNilai = 'A';
Berikut ini adalah contoh program yang mendeklarasikan dan menginisialisasi beberapa variabel:
13
2.
Untuk mengeluarkan nilai dari variabel yang diinginkan, kita dapat menggunakan perintah
sebagai berikut,
System.out.println()
System.out.print()
15
byte
short
int
float
long
double
Tanda panah dan garis putus-putus berarti ada kemungkinan perubahan nilai karena tidak presisi.
Misalnya dari tipe long menjadi tipe float. Long mempunyai rentang nilai yang lebih panjang
daripada float, karena itu bisa muncul kesalahan perhitungan.
Pengubahan mengikuti tipe data yang peling luas rentang nilainya. Jika salah satu variabel adalah
double, maka seluruh data akan diubah menjadi double. Jika tidak ada double dan adanya float,
maka seluruh data akan menjadi float. Terus demikian hingga long, int, dan terakhir short.
Berikut contoh dilakukannya konversi secara otomatis:
int x = 1;
int y = 2;
int z=x/y; //z bernilai 0 karena terjadi pembulatan hasil
x=1/2.0; //x bernilai 0.5 karena 2.0 adalah double
Konversi otomatis tidak dapat mengubah data ke tipe yang berukuran lebih kecil.
int i = 12;
byte z = i; //error
double xx = 10.75;
16
Konversi tipe data menjadi berukuran lebih kecil dapat dilakukan melalui casting. Perlu
diperhatikan bahwa ada kemungkinan terjadi perubahan nilai karena disesuaikan dengan tipe data
yang baru.
Sintaks yang digunakan adalah menggunakan tanda kurung pada tipe data yang diinginkan.
(tipe_data) ekspresi;
Tambahan:
Dalam membuat program Java kita seringkali membutuhkan untuk mengkonversi nilai dari
sebuah String menjadi angka dan sebaliknya. Angka itu bisa integer atau double.
Misalnya dari tipe int ke String :
int a = 100;
String s = String.valueOf(a);
17
3. Gunkan method pada object untuk membaca masukan sesuai tipe data yang ingin dibaca.
Contoh:
nama = input1.nextLine(); //membaca masukan String
usia = input1.nextInt(); //membaca masukan int
usia = input1.nextInt();
System.out.println(Nama Anda : + nama);
System.out.println(Usia Anda : + usia + \n);
}
}
18
OPERATOR
Java merupakan bahasa pemrograman yang kaya akan operator. Operator-operator tersebut
dikelompokkan menjadi empat bagian besar, yaitu: Operator Aritmatika, Operator Relasi,
Operator Logika, dan Operator Bitwise. Kemudian ada juga Operator Kondisi.
1.
Operator Aritmatika
Operator aritmatika adalah operator-operator yang digunakan untuk melakukan perhitunganperhitungan matematis, seperti: penjumlahan, pengurangan, pembagian dan perkalian. Perhatikan
tabel berikut:
Operator
+
*
/
%
++
--
Keterangan
Penjumlahan
Pengurangan
Perkalian
Pembagian
Modulus (Sisa bagi)
Increment (Menaikan nilai dengan 1)
Decrement (Menurunkan nilai dengan 1)
Operand dari operator aritmatika harus bertipe numerik. Anda tidak dapat menggunakanya untuk
tipe data boolean .Sebagai perkecualian untuk tipe char, Anda masih dapat melakukan operasi
aritmatika karena sebenarnya, atau pada intinya, tipe char merupakan subset dari tipe int.
Berikut ini contoh sebuah operasi aritmatika:
int a = 5;
int b = 15;
c = a + b;
Selanjutnya, dalam java, operator modulus (%) digunakan untuk menentukan sisa bagi dari
sebuah operasi pembagian bilangan bulat (integer) maupun bilangan riil (floating-point).
Perhatian contoh kode berikut:
int x = 13;
int y = 5;
int z = a % b;
Disini nilai z akan bernilai 3. Nilai 3 ini berasal dari sisa pembagian variabel x dan y yang
menghasilkan nilai 2. Selanjutnya nilai 2 ini dikalikan 5 menghasilkan nilai 10, dan nilai 3 ini
berasal dari 13 dikurangi 10. Dengan kata lain, 3 adalah sisa bagi dari operasi pembagi 13/10.
Kemudian, untuk operator increment dan decrement, increment digunakan untuk menaikkan nilai
operand dengan nilai 1, sedangkan decrement merupakan kebalikanya yaitu menurunkan nilai
operand dengan nilai 1. Coba perhatikan kode berikut:
19
x = x + 1;
20
21
2.
Operator penugasan (assignment) digunakan untuk memasukkan nilai ke dalam suatu variabel.
Operator ini biasa dikenal dengan nama operator sama dengan (=).
Berikut ini tabel menjukkan daftar operator penyingkatan dalam java assignment atau proses
memasukkan nilai kedalam sebuah variabel.
Operator
+=
-=
*=
/=
%=
Keterangan
Assigment untuk penjumlahan
Assigment untuk pengurangan
Assigment untuk perkalian
Assigment untuk pembagian
Assigment untuk sisa bagi
-=
*=
/=
%=
a;
a;
a;
a;
//sama
//sama
//sama
//sama
dengan
dengan
dengan
dengan
b
b
b
b
=
=
=
=
b
b
b
b
*
/
%
a
a
a
a
22
3.
Operator Relasi
Operator relasi adalah operator yang menyatakan hubungan satu operand dengan operand lainya
apakah sama dengan, tidak sama dengan, lebih besar, lebih kecil, lebih kecil atau sama dengan,
ataukah lebih besar atau sama dengan. Hasil yang diberikan dari operasi yang melibatkan
operator relasi akan bernilai boolean (true / false). Tabel berikut ini menunjukkan daftar operator
relasi yang terdapat dalam Java.
Operator
>
>=
<
<=
==
!=
Keterangan
Lebih besar
Lebih besar sama dengan
Lebih kecil
Lebih kecil sama dengan
Sama dengan
Tidak sama dengan
Operator == dan != dapat diterapkan ke tipe apapun, baik numerik, karakter, maupun boolean.
Adapun keempat operator lainya hanya dapat digunakan untuk tipe numerik dan char , untuk
mengetahui apakah suatu operand lebih besar atau lebih kecil dari operand lainya. Perhatikan
contoh kode berikut:
int x = 5;
int y = 10;
boolean z = x > b;
Disini nilai z akan bernilai false, karena pada kenyataanya nilai y lebih besar dari nilai x.
Berikut adalah contoh program operator relasi:
public class contohRelasi{
public static void main(String[] args) {
int i , j ;
boolean b1,b2;
i = 10;
j = 11 ;
if (i < j )
System.out.println(i < j) ;
if (i <= j )
System.out.println(i <=j) ;
if (i != j )
System.out.println(i != j) ;
b1 = true;
b2 = false;
if ( !(b1 & b2))
System.out.println(!(b1 & b2 ) is true);
if ( !(b1 I b2))
System.out.println(!(b1 I b2 ) is true);
23
if ( !(b1 ^ b2))
System.out.println(!(b1 ^
b2 ) is true);
4.
Operator Logika
Operator logika digunakan untuk melakukan operasi terhadap dua operand yang bertipe boolean.
Hasil yang diberikan pada operasi ini juga akan bertipe boolean. Berikut ini tabel yang
menunjukkan operator boolean.
Operator
&&
||
^
!
Keterangan
AND
OR
XOR
NOT
Apabila terdapat dua operand bernilai boolean (misalnya A dan B) dan keduanya digunakan
dalam operasi AND, OR, XOR, dan NOT, maka nilai-nilai yang dihasilkan sebagai berikut:
A
True
True
A && B
True
A || B
True
A^B
False
!A
False
True
False
False
True
True
False
False
True
False
True
True
True
False
False
False
False
False
True
5.
Operator Bitwise
Operator bitwise digunakan untuk melakukan operasi boolean terhadap dua buah
operand bertipe integer. Operasi ini dilakukan bit demi bit. Dengan demikian, secara
implisit nilai integer tersebut akan dikonversi terlebih dahulu kedalam bentuk biner.
Dalam operasi ini, nilai true direpresentasikan dengan nilai 1 dan false dengan nilai 0.
Berikut ini daftar operator bitwise yang terdapat didalam java:
Operator
&
|
^
~
>>
<<
>>>
<<<
Keterangan
AND
OR
XOR
NOT ( Negasi )
Shift Right
Shift Left
System.out.println("Nilai
x=-111;
y= x >> 1;
System.out.println("Nilai
x= 111;
y= x >>> 1;
System.out.println("Nilai
x= -111;
y= x >>> 1;
System.out.println("Nilai
x= 111;
y= x << 1;
System.out.println("Nilai
x=1000;
y= x << y;
System.out.println("Nilai
}
}
6.
Operator kondisi ?: adalah operator ternary. Hal ini berarti bahwa operator ini digunakan
dalam tiga bentuk pernyataan condisional argumen yang digunakan bersama-sama. Struktur
pernyataan yang menggunakan operator kondisi adalah,
exp1?exp2:exp3
Dimana nilai exp1 adalah suatu pernyataan boolean yang memiliki hasil yang salah satunya
harus berupa nilai true atau false.
Jika exp1 bernilai true, exp2 merupakan hasil operasi . Jika bernilai false, kemudian exp3
merupakan hasil operasinya.
Sebagai contoh, diberikan code sebagai berikut,
public class contohKondisi {
public static void main( String[] args ){
String
status = "";
int nilai = 80;
//mendapatkan status pelajar
status = (nilai >= 60)?"Lulus":"Gagal";
//print status
System.out.println( status );
}
}
26
MENGGUNAKAN IDE
Dalam membuat program Java, selain menggunakan command prompt dan notepad++, bisa
digunakan aplikasi khusus yaitu berupa IDE yang sangat membantu dalam membuat program
Java. IDE Java yang familiar digunakan adalah Eclipse IDE dan NetBeans IDE.
Disini diperkenalkan NetBeans IDE yang bisa didownload pada link:
https://netbeans.org/downloads/.
Sekilas tentang NetBeans IDE
NetBeans adalah salah satu aplikasi IDE yang digunakan programmer untuk menulis,
mengompile, mencari kesalahan, dan menyebarkan program. NetBeans ditulis dalam bahasa java
namun dapat juga mendukung bahasa pemrogramman lain. Program ini bebas digunakan.
Fitur-fitur pada NetBeans:
1. Smart code completion : mengusulkan nama variable dari suatu tipe, melengkapi
keyword, dan mengusulkan tipe parameter dari method.
2. Menggunakan code generator : dengan menggunakan fitur ini kita dapat meng-generate
constructor, setter and getter method, dll.
3. Error stripe : fitur yang menandai baris yang error dengan menghiglight merah.
4. Bookmarking : fitur yang digunakan untuk menandai baris yang suatu saat hendak kita
modifikasi.
5. go to commands : fitur yang digunakan untuk jump ke deklarasi variable, source code
atau file yang ada pada project yang sama.
Database yang didukung NetBeans:
1. JDBC merupakan spesifikasi standar dari javasoft API yang memungkinkan program
java untuk mengakses sistem database manajemen.
2. JDBC API terdiri dari satu set interface dan kelas yang ditulis dengan bahasa
pemrogramman java.
3. ojdbc (oracle java database conectivity) adalah driver yang menghubungkan program
java dan oracle.
4. mysql-connector-java adalah driver yang menghubungkan program java dan oracle
5. JDBC-ODBC.
6. mySQL-server.
27
NetBeans sebagai IDE ditujukan untuk memudahkan pemrograman Java. Pada bulan Februari
2006 para instruktur Java dari Sun Microsystem mengikuti training untuk beralih dari
pemrograman Java manual (memakai editor teks dan command prompt) ke pemrograman GUI
dengan Netbeans.
Netbeans berbasis visual dan event-driven. Sama seperti IDE lainnya, misal Borland Delphi dan
Microsoft Visual Studio. Netbeans mencakup compiler, builder dan debugger internal. Hal ini
memudahkan proses pasca perancangan program. Proses deployment atau tes dapat dilakukan
dengan NetBeans J2SE, J2EE, J2ME di NetBeans.
NetBeans seperti juga konsep Java sangat fleksibel. Sepanjang library Java tersedia, maka kita
dapat melakukan pemrograman untuk jenis aplikasi apapun. Kita dapat membuat aplikasi dekstop
(J2SE). Pemrograman web dan enterprise (J2EE) dapat dilakukan secara visual:
1. Koneksi server database melalui JDBC dapat dilakukan dari NetBeans, baik pada saat
perancangan maupun deployment program.
2. Pembuatan komponen beans.
3. Pembuatan Java Server Pages (JSP), web module (servicelocator dan servlet), web
services dengan menggunakan wizard yang telah disediakan.
NetBeans juga menyertakan paket web-server Apache Jakarta Tomcat, Sun Java System
Application Server, GlassFish dll. Server ini dapat diakses dari dalam NetBeans, baik pada saat
perancangan maupun saat deployment aplikasi web. Untuk membuat aplikasi mobile (MIDP),
MIDlet dapat dirancang dengan NetBeans.
2. Maka akan muncul tampilan seperti gambar berikut, Pilih Java > Java Aplication.
Kemudian klik Next.
28
4. Lalu di-uncheck tanda centang pada Creat Main Class dan Set as Main Project. Edit
Project Name menjadi ProjectPertama (atau terserah Anda menamakan apa). Kemudian
klik Finish.
29
5. Pada ProjectPertama yang baru dibuat, klik kanan pada Sorce Package dan pilih New >
Java Class.
6. Maka akan muncul tampilan seperti gambar berikut. Kemudian edit Class Name (terserah
Anda menamakan apa). Klik Finish.
30
31
PERCABANGAN
Percabangan adalah suatu pilihan atau opsi dengan kondisi tertentu. Jika kondisi yang menjadi
syarat terpenuhi, maka opsi atau pilihan dijalankan, jika tidak maka sebaliknya. Dalam java
terdapat 4 macam jenis percabangan, if, if-else, else-if, dan juga switch. Keempat jenis ini
memiliki penggunaan masing-masing. Berikut penjelasan mengenai penggunaan tiap-tiap jenis
percabangan:
1. if : Percabangan if ini digunakan jika kita hanya memiliki satu pernyaatan yang akan
dijalankan dengan syarat tertentu. Jika kondisi benar, maka pernyataan akan dijalankan.
2. if else : Percabangan if else digunakan saat kita memiliki dua pernyataan dengan syarat
tertentu. Jika hasil dari if benar, maka pernyataan1 yang dijalankan, sedangkan jika salah,
pernyataan dua yang akan dijalankan.
3. else-if : Percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan
banyak pernyataan (lebih dari 2). jika kondisi1 benar, maka pernyataan1 akan dijalankan,
jika kondisi2 benar, maka penyataan2 akan dijalankan, jika semua kondisi salah, maka
penyataan4 yang akan dijalankan saja.
4. switch-case : Percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari
2) dan banyak pernyataan (ledbih dari 2). Sebenarnya switch-case ini hampir sama dengan
else if. Jika nilai variabel yang ditunjuk bernilai sesuai nilai1, maka pernyataan1 akan
dijalankan, jika nilai variabel yang ditunjuk bernilai sesuai nilai2, pernyataan2 dijalankan,
jika tidak, maka pernyataan3 yang akan dijalankan.
1.
Percabangan if
Contoh:
public class contohIf {
public static void main( String[] args ){
Scanner masukan = new Scanner (System.in);
int nilai;
System.out.println(Masukkan nilai akhir matakuliahnya :);
nilai = masukkan.nextInt();
if (nilai < 55)
System.out.println(Mahasiswa tersebut tidak lulus);
}
}
32
2.
Percabangan if else
Contoh:
public class contohIfElse {
public static void main( String[] args ){
int nilai = 8;
if (nilai == 10){
System.out.println(Sepuluh);
} else {
System.out.println(Bukan Sepuluh);
}
}
}
3.
Percabangan else-if
Contoh:
public class contohElseIf {
public static void main( String[] args ){
if (nilai >= 80)
System.out.println(Nilainya A);
else if (nilai >= 70)
33
System.out.println(Nilainya
else if (nilai >= 55)
System.out.println(Nilainya
else if (nilai >= 40)
System.out.println(Nilainya
else
System.out.println(Nilainya
}
}
B);
C);
D);
E);
}
}
4.
Percabangan switch-case
Contoh:
public class contohSwitchCase {
public static void main( String[] args ){
System.out.println(Masukkan angka 1-3 : );
int bil = masukan.nextInt();
switch (bil) {
case 1 : System.out.println(Satu); break;
case 2 : System.out.println(Dua); break;
case 3 : System.out.println(Tiga);
default : System.out.println(Bilangan di luar range);
}
}
}
34
PERULANGAN
Dalam Java terdapat 3 jenis perulangan yaitu while, do-while, dan for. Berikut penjelasan dari
ketiga jenis perulangan:
1. while : Pernyataan while berguna untuk melakukan proses perulangan untuk sebuah
kondisi, selama kondisi tersebut bernilai benar (true), maka perulangan akan terus
berjalan, dan berhenti ketika kondisi bernilai salah (false).
2. do-while : Merupakan perulangan yang hampir mirip dengan perulangan while namun
perbedaanya; pada perulangan do-while, maka minimal instruksi akan dijalankan
sekali.
3. for : Merupakan perulangan yang memiliki variabel untuk melakukan pengkondisian,
berbeda dengan while dan do-while yang kita harus membuat sebuah variabel diluar
untuk melakukan pengkondisian, pada perulangan for, ditempatkan sebuah blok untuk
membuat variabel dan melakukan proses pengkondisian.
1.
Perulangan while
Contoh 1:
public class contohWhile1 {
public static void main( String[] args ){
int n=0, total=0, bil=9;
while (bil !=0) {
N++;
System.out.println(masukkan bilangan ke-+n+ : ) ;
bil = masukan.nextInt () ;
total +=bil;
}
System.out.println(total jumlah+(n-1)+ bilangan tsb : );
System.out.println(total);
}
}
35
Contoh 2:
import java.util.Scanner;
public class contohWhile2 {
public static void main( String[] args ){
int a;
int b = -1;
System.out.println("Program deret bilangan ganjil");
Scanner input = new Scanner (System.in);
System.out.print("Masukkan angka maksimal : ");
a = input.nextInt();
while (b < a) {
b += 2;
System.out.println(" " +b);
}
System.out.println();
}
}
2.
Perulangan do-while
Contoh1:
public class contohDoWhile1 {
public static void main( String[] args ){
int jumlah = 100;
do {
System.out.println(jumlah);
jumlah++;
} while (jumlah <= 10);
}
}
Contoh 2:
import java.util.Scanner;
public class contohDoWhile2 {
public static void main( String[] args ){
int a;
int b = 1;
36
3.
Perulangan for
Contoh1:
public class contohDoWhile1 {
public static void main( String[] args ){
for (int i = 1 <5; i++) {
System.out.println(Hello World!!);
}
}
}
Contoh 2:
public class contohDoWhile2 {
public static void main( String[] args ){
int x, y;
for (ax1; x<=4; x++) {
for (y=1; y<=x; y++)
System.out.print(" * " );
System.out.println();
}
for (x=5; x>0; x--) {
for (y=0; y<x; y++)
System.out.print(" * " );
System.out.println();
}
}}
37
4.
Statement Break
);
5.
Statement Continue
Perintah continue dapat digunakan untuk meloncati sebuah perulangan, maksudnya adalah
instruksi yang seharusnya dapat dilewat, hal ini berarti instrukti tidak akan dijalankan.
Contoh:
public class contohContinue {
public static void main( String[] args ){
for(int i = 1; i <= 100; i++){
if(i % 2 == 0){
continue;
}
System.out.println(i);
}
}
}
38
ARRAY
1. Pengenalan Array
Sebelumnya, kita telah mendiskusikan bagaimana cara pendeklarasian berbagai macam variabel
dengan menggunakan tipe data primitif. Dalam pendeklarasian variabel, kita sering menggunakan
sebuah tipe data beserta nama variabel atau identifier yang unik. Apabila kita ingin menggunakan
variabel tersebut, kita akan memanggil dengan nama identifier-nya. Sebagai contoh, kita
memiliki tiga variabel dengan tipe data int yang memiliki identifier berbeda untuk tiap variabel.
int number1;
int number2;
int number3;
number1=1;
number2=2;
number3=3;
Dari kode diatas, kita tidak perlu mendeklarasikan variabel yang banyak dengan tujuan sama.
Oleh karena itu digunakan array yang berfungsi mendeklarasikan variabel dengan tipe data yang
sama. Dalam Java maupun di bahasa pemrograman yang lain, terdapat sebuah kemampuan untuk
menggunakan satu variabel yang dapat menyimpan beberapa data dan memanipulasinya dengan
lebih efektif. Tipe variabel inilah yang disebut sebagai array. Contoh dari array integer sebagai
berikut.
Sebuah array akan menyimpan beberapa item data yang memiliki tipe data sama di dalam sebuah
blok memori yang berdekatan yang kemudian dibagai menjadi beberapa ruang. Array adalah
sebuah variabel/sebuah lokasi tertentu yang memiliki satu nama sebagai identifier, namun
identifier ini dapat menyimpan lebih dari sebuah nilai.
2. Pendeklarasian Array
Seperti yang telah dijelaskan secara singkat sebelumnya, array adalah kelompok variabel dengan
tipe sejenis dan dinyatakan dengannama yang sama. Dengan kata lain, array merupakan tipe
khusus yang menyatukan sekelompok variabel dengan tipe yang sama.
Array di Java dideklarasikan dengan kurung siku: []. Sintaks umum deklarasi array:
type var-name[];
atau
type[] var-name;
39
type berperan dalam mendeklarasikan tipe basis dari array. Tipe basis menentukan tipe data bagi
masing-masing elemen yang membentuk array. Dengan demikian, tipe basis untuk array
menentukan tipe data yang dimuat oleh array.
Berikut contoh-contoh deklarasi array di Java:
int numbers[];
char[] letters;
long grid[][];
Pada Java tidak perlu menspesifikasikan ukuran array kosong saat mendeklarasikan array. Kita
harus selalu menyatakan ukuran array secara eksplisit saat melakukan operasi penciptaan
menggunakan operator new() atau dengan mendaftarkan item-item untuk array pada saat
penciptaan.
Berikut contoh pendeklarasian array dengan menspesifikasikan ukuran spesifiknya menggunakan
operator new() dan dengan memberikan daftar item yang termasuk di dalam array :
char alphabet[] = new() char [26];
int primes = {7, 11, 13};
Meskipun deklarasi telah menetapkan bahwa monthDays adalah variabel array, namun
sesungguhnya tidak ada array yang diciptakan pada saat itu. Nilai dari monthDays adalah nilai
null yang merepresentasikan array tanpa nilai dan bukan bernilai nol.
Bentuk umum new() untuk array 1 dimensi adalah sebagai berikut:
array_var = new() type[size];
Dalam hal ini, type menspesifikasikan tipe data yang dialokasikan, size menspesifikasikan jumlah
dari elemen array, dan array-var adalah variabel array yang dirangkai ke array. Dengan
demikian, untuk menggunakan new(), kita harus menspesifikasikan tipe dan jumlah elemen
untuk dialokasikan. Elemen-elemen di array yang dialokasikan oleh new() akan secara otomatis
diinisialisasi ke nol.
40
Berikut ini salah satu contoh penciptaan untuk array yang berisi jumlah hari maksimum di
masing-masing bulan:
public class contohArray1D {
public static void main( String[] args ){
// langkah 1: deklarasi variabel array
int monthDays[];
// langkah 2: penciptaan array bilangan int dengan 12 elemen
monthDays = new int[12];
monthDays[0] = 31;
monthDays[1] = 29;
monthDays[2] = 31;
monthDays[3] = 30;
monthDays[4] = 31;
monthDays[5] = 30;
monthDays[6] = 31;
monthDays[7] = 31;
monthDays[8] = 30;
monthDays[9] = 31;
monthDays[10] = 30;
monthDays[11] = 31;
System.out.println("Agustus mempunyai "+monthDays[7]+"hari");
}
}
Perintah ini mendeklarasikan dan mengalokasikan array 4 kali 5 dan memberikan ke variabel
int2DArr. Secara internal matriks ini diimplementasikan sebagai array dari array bertipe int.
Secara konseptual array ini digambarkan sebagai berikut:
41
Berikut contoh program yang memberikan angka ke masing-masing elemen di array dari kiri ke
kanan, puncak ke bawah, kemudian menampilkan masing-masing elemen:
public class contohArray2D {
public static void main( String[] args ){
//Langkah 1: deklarasi variabel array dan penciptaan array
int int2DArr[][] = new int[4][5];
int k=0;
for (int i=0;i<4;i++){
for (int j=0;j<5;j++){
int2DArr[i][j] = k++;
}
}
for (int i=0;i<4;i++){
for (int j=0;j<5;j++){
System.out.print(int2DArr[i][j] + " ");
}
System.out.println();
}
}}
42