Bahasa Pemrograman 2 Pengenalan JAVA 1 Pengenalan JAVA 1
[email protected]
Instalasi JDK Instalasi JDK • Download JDK for free • Instalasi biasa Instalasi biasa • Set PATH dan JAVA_HOME – set PATH=%PATH%;
– set JAVA_HOME= _ y y
• Bisa juga dilakukan lewat Windows GUI – Control Panel > System Properties > Environment C t lP l S t P ti E i t Variable
Set PATH Set PATH
Editor • • • • •
Notepad Notepad++ atau Editplus Notepad++ atau Editplus Editplus Jcreator Lite / Pro Netbeans 6 x Netbeans 6.x
Compile & Run Compile & Run • Compile: javac – Case sensitive – Menghasilkan .class
• Run: java R j < fil > – Case sensitive – Menghasilkan output
• JAR: java –jar JAR: java –jar – Menjalankan JAR file
Proses • Kompilasi java file menjadi class file K il i j fil j di l fil – Menggunakan compiler – Perubahan source code menjadi intermediate language Perubahan source code menjadi intermediate language (bytecode)
• Running java class (bytecode) diatas Virtual Machine ( (JVM) ) – Menggunakan interpreter – Agar lebih cepat Agar lebih cepat – Agar bisa multiplatform
• JVM berdiri berada diatas sistem operasi JVM berdiri berada diatas sistem operasi – Bertugas menerjemahkan kode‐kode bytecode kedalam perintah‐perintah yang dimengerti platform tertentu
Struktur Program Struktur Program
My First Java Program My First Java Program // menampilkan sebaris text dengan multiple statement public class salam2 { public static void main(String[] args) { System.out.print(“Selamat datang”); System.out.println(“ y p di JAVA”); } } // menampilkan beberapa baris dengan sebaris statement public class salam3 { public static void main(String[] args) { System.out.println(“Selamat datang\n di JAVA”); } }
Tipe data Primitif di JAVA Tipe data Primitif di JAVA • Numerik: – byte, short, int, long, float, double, y , , , g, , ,
• Non numerik: – char, boolean h b l
• Tipe data tersebut diperlakukan sebagai nilai p p g biner di dalam memory komputer
Identifier pada Java Identifier pada Java • Variabel: identifier yang bisa diubah pada saat p g program berjalan (runtime) j ( ) – int a;
• Konstanta Konstanta: identifier yang tidak bisa diubah identifier yang tidak bisa diubah saat program berjalan (runtime) – final int a;
Variabel konstanta Variabel ‐ class Coba { public static void main(String[] args) { final int CONS = 12; System.out.println(CONS + "Hello World!"); } }
• Konstanta Æ variabel yang nilainya tidak bisa variabel yang nilainya tidak bisa diubah. • Pemberian namanya biasanya menggunakan huruf P b i bi k h f besar semua. • Kata kuncinya menggunakan final.
Penamaan identifier Penamaan identifier • Diawali dengan huruf, $ atau _ • Tidak boleh mengandung karakter khusus atau Tidak boleh mengandung karakter khusus atau spasi kecuali $ dan _ • Tidak boleh sama dengan keyword Tid k b l h d k d • Bersifat case sensitive
Penamaan Variabel Penamaan Variabel
Keywords
Operator
Operator Kondisional p
Oprtr p
Contoh
Keterangan g
&&
op1 && op2
Menghasilkan true jika op1 dan op2 true
||
op1 || op2
Menghasilkan true jika op1 atau op2 true
!
!op1
Menghasilkan true jika op1 bernilai false
&
op1 & op2
Bitwise AND
|
op1 | op2
Bitwise OR
^
op1 != op2
Menghasilkan true jika salah satu true, tetapi tidak keduanya
Contoh • Misalnya, A bernilai 5, B bernilai 7, dan C g p bernilai ‘a’, maka ungkapan di bawah ini mempunyai hasil akhir benar atau salah?
A < B || B == 7 && C > ‘z’ z’
Contoh: Hasil Contoh: Hasil • •
Hasil akhir: benar Langkah langkah: Langkah‐langkah: 1. Jenjang operator relasional lebih tinggi dibandingkan dengan operator logika, jadi operator relasional dikerjakan lebih dahulu 2. Operator logika ‘&&’ mempunyai jenjang lebih tinggi dari operator ‘||’, sehingga operator ‘&&’ dikerjakan lebih dahulu 3 Bagian yang paling akhir dikerjakan adalah operator 3. Bagian yang paling akhir dikerjakan adalah operator ‘||’ ||
Beberapa Ungkapan p g p
Ungkapan
Arti
X/Y
X dibagi Y
X = 10
X diisi nilainya dengan 10
Y=Y+1
Y diisi dengan nilai Y sebelumnya ditambah 1
Y=X
Y dii diisii d dengan nilai il i X
X += Y
Sama dengan X = X + Y
X /= Y
Sama dengan X = X / Y
X=X-M
X lama dikurangi M, hasilnya dimasukkan lagi ke X
Operator • Latihan: L tih class Operator1 { public static void main(String[] args) { int a = 4; int b = 3; a = ++b; int c = b++; b +=a; System.out.println("Nilai a = "+ a ); System.out.println("Nilai b = "+ b ); System.out.println("Nilai c = "+ c ); } }
Operator • Latihan: L tih class Operator2 { public static void main(String[] args) { double i = 4; double d1 = 3; double d2 = 2.5; i = d1/d2; System.out.println("Nilai i pertama = "+i); } }
Pemberian Komentar Pemberian Komentar • • •
Program yang terdokumentasi dengan baik berarti alur dan logika program P t d k t id b ik b ti l d l ik tersebut jelas, dapat dibaca dengan mudah pada lain waktu. Komentar dalam banyak baris diawali dengan tanda /* , kemudian setelah semua komentar ditulis, diakhiri dengan tanda */ sebagai penutupnya. k d l d kh d d */ b Sedangkan untuk komentar dalam satu baris saja, ditulis dengan tanda // di awal kalimat komentar.
Membaca data dari Keyboard Membaca data dari Keyboard • Sejak versi 1.6x keatas: Gunakan: System.console().readLine(); • Fungsi diatas menerima inputan dari pengguna F i di t i i t d i bertipe data String sehingga harus ditampung terlebih dahulu ke variabel bertipe String • Contoh: • String nama = System.console().readLine(“Masukkan nama:”);
Contoh
Boolean • Tipe data: boolean • Bernilai true dan false Bernilai true dan false
Casting • “Pemaksaan” tipe data • Konversi tipe data Konversi tipe data • Lebih bagus jika konversi dilakukan dari tipe d data yang jangkauannya besar ke yang kecil j k b k k il – Tidak kehilangan data (data loss)
• Akan dibahas lebih jauh pada modul “Generics dan Collections” dan Collections
Operator Casting Operator ‐ • Latihan: L tih class Casting2 { public static void main(String[] args) { int i; i = (int) (15.0/4.0); System.out.println("Nilai System.out.println( Nilai i pertama = "+i); +i); i = (int)(8.5)/(int)(2.5); y p ( i kedua = "+i); ); System.out.println("Nilai } }
Alir kontrol Block Scope Alir kontrol – Block Scope • Apa output‐nya? public class Blok1 { p public static void main (String[] args) { int x = 10; { int y =20; } System.out.println(x); System.out.println(y); y p y } }
Alir kontrol Block Scope Alir kontrol – Block Scope • Apa output‐nya? public class Blok2 { p public static void main (String[] args) { int x = 10; { int y = 20; int x = 30; } System.out.println(x); y p } }
Percabangan
Alir kontrol Seleksi Alir kontrol – class if1 { public static void main(String[] args) { int a = 12; if ( (a > 5) { System.out.println("a lebih besar dari 5"); } if (a>10) { System.out.println("a lebih besar dari 10"); } } }
Alir kontrol Seleksi Alir kontrol – class if2 { public static void main(String[] args) { int a = -3; if ( (a > 5) System.out.println("a lebih besar dari 5 [1]"); { System.out.println("a lebih besar dari 5 [2]"); } } }
Alir kontrol Seleksi Alir kontrol – class if3 { public static void main(String[] args) { int a = 10; i t b = 6 int 6; if (a > 5 && b ==6) { System.out.println("Ya"); } else { System.out.println("Tidak"); } } }
Contoh
Switch Case Switch Case H Hanya untuk byte, short, int, char t kb t h t i t h
Perulangan
Do while Do while
Konversi Tipe Data Konversi Tipe Data • SSecara default semua inputan dari pengguna adalah d f lt i t d i d l h bertipe String Untuk perhitungan harus dilakukan konversi tipe data tipe data • Untuk perhitungan harus dilakukan konversi • X to String – int to String: g int aInt = 1; String aString = Integer.toString(aInt);
• String to X St i t X – String to int: String aString = "78"; 78 ; int aInt = Integer.parseInt(aString); – Integer.valueOf().intValue();
Konversi • Java akan melakukan konversi otomatis dengan k l k k k i i d ketentuan sbb.: – Apapun ditambahkan dengan tipe String menjadi String – Tipe bulat dioperasikan dengan tipe bulat Ti b l t di ik d ti b l t menghasilkan tipe bulat dengan membuang nilai desimalnya – Jika dalam suatu ekspresi, terdapat tipe dengan kapasitas lebih tinggi, maka ekspresi akan p gg , p menghasilkan nilai dengan tipe data dengan kapasitas tertinggi
Argumen Program Argumen Program • Program yang dijalankan di console ( (command prompt) dapat menerima argumen p p) p g / parameter • Semua argumen / parameter tersebut berupa Semua argumen / parameter tersebut berupa String public static void main(String args[]) • args[] ‐> dapat berisi lebih dari satu data yang args[] ‐> dapat berisi lebih dari satu data yang bertipe array of String
args[] • Berupa array 1 dimensi bertipe String • Cara pengaksesan: Cara pengaksesan: – Looping: f (i i 0 i for(int i=0;i<args.length();i++) l h() i ) – Langsung akses ke indexnya args[1], dst...
Latihan & Kumpulkan Latihan & Kumpulkan
Latihan For statement
• Latihan – Bagaimana membuat tampilan seperti berikut?
– Bagaimana mambuat tampilan seperti berikut?
NEXT • Pengenalan JAVA 2