bahasa pemrograman 2 - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/bp22.pdf · •...
Post on 06-Mar-2018
240 Views
Preview:
TRANSCRIPT
Bahasa Pemrograman 2
Pengenalan JAVA 1Pengenalan JAVA 1anton@ukdw.ac.id
Instalasi JDKInstalasi JDK
• Download JDK for free• Instalasi biasaInstalasi biasa• Set PATH dan JAVA_HOME
– set PATH=%PATH%;<your Java\Bin directory>– set JAVA_HOME=<your Java directory>_ y y
• Bisa juga dilakukan lewat Windows GUIC t l P l S t P ti E i t– Control Panel > System Properties > Environment Variable
Set PATHSet PATH
EditorEditor
• Notepad• Notepad++ atau EditplusNotepad++ atau Editplus• Editplus• Jcreator Lite / Pro• Netbeans 6 xNetbeans 6.x
Compile & RunCompile & Run
• Compile: javac <namafile.java>– Case sensitive– Menghasilkan .class
R j < fil >• Run: java <namafile>– Case sensitive– Menghasilkan output
• JAR: java –jar <namafile jar>• JAR: java –jar <namafile.jar>– Menjalankan JAR file
ProsesProsesK il i j fil j di l fil• Kompilasi java file menjadi class file– Menggunakan compiler– Perubahan source code menjadi intermediate languagePerubahan source code menjadi intermediate language (bytecode)
• Running java class (bytecode) diatas Virtual Machine ( )(JVM)– Menggunakan interpreterAgar lebih cepat– Agar lebih cepat
– Agar bisa multiplatform• JVM berdiri berada diatas sistem operasiJVM berdiri berada diatas sistem operasi
– Bertugas menerjemahkan kode‐kode bytecode kedalam perintah‐perintah yang dimengerti platform tertentu
Struktur ProgramStruktur Program
My First Java ProgramMy First Java Program
// menampilkan sebaris text dengan multiple statementpublic class salam2 {
public static void main(String[] args) {System.out.print(“Selamat datang”);System.out.println(“ di JAVA”);y p
}}// menampilkan beberapa baris dengan sebaris statement// menampilkan beberapa baris dengan sebaris statementpublic class salam3 {
public static void main(String[] args) {System.out.println(“Selamat datang\n di JAVA”);
}}}
Tipe data Primitif di JAVATipe data Primitif di JAVA
• Numerik:– byte, short, int, long, float, double, y , , , g, , ,
• Non numerik:h b l– char, boolean
• Tipe data tersebut diperlakukan sebagai nilai p p gbiner di dalam memory komputer
Identifier pada JavaIdentifier pada Java
• Variabel: identifier yang bisa diubah pada saat program berjalan (runtime)p g j ( )– int a;
• Konstanta identifier yang tidak bisa diubah• Konstanta: identifier yang tidak bisa diubah saat program berjalan (runtime)– final int a;
Variabel konstantaVariabel ‐ konstantaclass Cobaclass Coba{public static void main(String[] args) {{
final int CONS = 12;System.out.println(CONS + "Hello World!");
}
• Konstanta variabel yang nilainya tidak bisa
}}
Konstanta variabel yang nilainya tidak bisa diubah.P b i bi k h f• Pemberian namanya biasanya menggunakan huruf besar semua.
• Kata kuncinya menggunakan final.
Penamaan identifierPenamaan identifier
• Diawali dengan huruf, $ atau _• Tidak boleh mengandung karakter khusus atauTidak boleh mengandung karakter khusus atau spasi kecuali $ dan _Tid k b l h d k d• Tidak boleh sama dengan keyword
• Bersifat case sensitive
Penamaan VariabelPenamaan Variabel
KeywordsKeywords
OperatorOperator
Operator Kondisionalp
Oprtr Contoh Keteranganp 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 keduanyatidak keduanya
ContohContoh
• Misalnya, A bernilai 5, B bernilai 7, dan C bernilai ‘a’, maka ungkapan di bawah ini g pmempunyai hasil akhir benar atau salah?
A < B || B == 7 && C > ‘z’A < B || B == 7 && C > z’
Contoh: HasilContoh: 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 Ungkapanp g p
Ungkapan ArtiX / 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 i d il i XY = X Y diisi dengan nilai X
X += Y Sama dengan X = X + Y
X /= Y Sama dengan X = X / YX /= Y Sama dengan X = X / Y
X = X - M X lama dikurangi M, hasilnya dimasukkan lagi ke X
OperatorOperator
L tih• Latihan:class Operator1{{public static void main(String[] args) {
int a = 4;int a = 4;int b = 3;
a = ++b;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 );
}}
OperatorOperator
L tih• Latihan:class Operator2{{public static void main(String[] args) {
double i = 4;double i = 4;double d1 = 3;double d2 = 2.5;
i = d1/d2;System.out.println("Nilai i pertama = "+i);
}}
Pemberian KomentarPemberian KomentarP t d k t i d b ik b ti l d l ik• Program yang terdokumentasi dengan baik berarti alur dan logika program tersebut jelas, dapat dibaca dengan mudah pada lain waktu.
• Komentar dalam banyak baris diawali dengan tanda /* , kemudian setelah k d l d kh d d */ bsemua komentar ditulis, diakhiri dengan tanda */ sebagai penutupnya.
• Sedangkan untuk komentar dalam satu baris saja, ditulis dengan tanda // di awal kalimat komentar.
Membaca data dari KeyboardMembaca data dari Keyboard
• Sejak versi 1.6x keatas:Gunakan:System.console().readLine();F i di t i i t d i• Fungsi diatas menerima inputan dari pengguna bertipe data String sehingga harus ditampung terlebih dahulu ke variabel bertipe String
• Contoh: • String nama = System.console().readLine(“Masukkan nama:”);
ContohContoh
BooleanBoolean
• Tipe data: boolean• Bernilai true dan falseBernilai true dan false
CastingCasting
• “Pemaksaan” tipe data• Konversi tipe dataKonversi tipe data• Lebih bagus jika konversi dilakukan dari tipe d j k b k k ildata yang jangkauannya besar ke yang kecil– Tidak kehilangan data (data loss)
• Akan dibahas lebih jauh pada modul “Generics dan Collections”dan Collections
Operator CastingOperator ‐ Casting
L tih• Latihan:class Casting2{{public static void main(String[] args) {
int i;int i;
i = (int) (15.0/4.0);System.out.println("Nilai i pertama = "+i);System.out.println( Nilai i pertama +i);
i = (int)(8.5)/(int)(2.5);System.out.println("Nilai i kedua = "+i);y p ( );
}}
Alir kontrol Block ScopeAlir 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 ScopeAlir 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;int x = 30;
}System.out.println(x);y p
}}
PercabanganPercabangan
Alir kontrol SeleksiAlir kontrol – Seleksi
class if1{public static void main(String[] args)public static void main(String[] args) {
int a = 12;if ( > 5)if (a > 5){
System.out.println("a lebih besar dari 5");}if (a>10){
System.out.println("a lebih besar dari 10");}
}}}
Alir kontrol SeleksiAlir kontrol – Seleksi
class if2{public static void main(String[] args)public static void main(String[] args) {
int a = -3;if ( > 5)if (a > 5)
System.out.println("a lebih besar dari 5 [1]");{
System.out.println("a lebih besar dari 5 [2]");}
}}
Alir kontrol SeleksiAlir kontrol – Seleksi
class if3{public static void main(String[] args)public static void main(String[] args) {
int a = 10;i t b 6int b = 6;if (a > 5 && b ==6) {
System.out.println("Ya");}else {
System.out.println("Tidak");}
}}}
ContohContoh
Switch CaseSwitch CaseH t k b t h t i t hHanya untuk byte, short, int, char
PerulanganPerulangan
Do whileDo while
Konversi Tipe DataKonversi Tipe DataS d f lt i t d i d l h• Secara default semua inputan dari pengguna adalah bertipe String
• Untuk perhitungan harus dilakukan konversi tipe dataUntuk perhitungan harus dilakukan konversi tipe data• X to String
– int to String:gint aInt = 1;String aString = Integer.toString(aInt);
St i t X• String to X– String to int:String aString = "78";String aString = 78 ;int aInt = Integer.parseInt(aString);
– Integer.valueOf(<nilaiString>).intValue();
KonversiKonversi
k l k k k i i d• Java akan melakukan konversi otomatis dengan ketentuan sbb.:– Apapun ditambahkan dengan tipe String menjadi StringTi b l t di ik d ti b l t– Tipe bulat dioperasikan dengan tipe bulat menghasilkan tipe bulat dengan membuang nilai desimalnyadesimalnya
– Jika dalam suatu ekspresi, terdapat tipe dengan kapasitas lebih tinggi, maka ekspresi akan p gg , pmenghasilkan nilai dengan tipe data dengan kapasitas tertinggi
Argumen ProgramArgumen 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 Stringpublic 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[]args[]
• Berupa array 1 dimensi bertipe String• Cara pengaksesan:Cara pengaksesan:
– Looping:f (i i 0 i l h() i )for(int i=0;i<args.length();i++)
– Langsung akses ke indexnyaargs[1], dst...
Latihan & KumpulkanLatihan & Kumpulkan
LatihanLatihanFor statement
• Latihan– Bagaimana membuat tampilan seperti berikut?
– Bagaimana mambuat tampilan seperti berikut?
NEXTNEXT
• Pengenalan JAVA 2
top related