java education network indonesia dasar pemrograman fileseperti, java literal, tipe data primitif,...

16
JAVA Education Network Indonesia jeni.jardiknas.org Dasar Pemrograman Pengenalan Pemrograman 1 Tujuan Setelah menyelesaikan bab ini, siswa diharapkan mampu: Mengidentifikasi bagian-bagian dasar program Java Membedakan beberapa hal yang penting pada Java seperti, Java literal, tipe data primitif, tipe variabel, identifier dan operator. Membuat program Java sederhana dengan menggunakan konsep yang telah dipelajari pada bab ini. Mempelajari Program Java Pertama 1 public class Hello 2 { 3 /** 4 * Program Java My first 5 */ 6 public static void main( String[] args ){ 1 //menampilkan string Hello world pada layar 2 System.out.println(“Hello world”); 1 } 2 } Deklarasi nama dari class yaitu Hello Pada Java, semua code harus berada di dalam deklarasi sebuah class. Class menggunakan akses berupa akses public, hal ini bisa membuat class Hello bisa diakses oleh class lain yang berada di luar packages (packages adalah sekumpulan dari class). Kita akan membahas packages dan akses class pada bab selanjutnya. public class Hello { /** * Program Java My first */ Mempelajari Program Java Pertama public class Hello { /** * Program Java My first */ Mempelajari Program Java Pertama Baris berikutnya merupakan tanda kurung kurawal { yang merupakan awal dari sebuah blok. Pada code ini, kita menempatkan tanda kurung kurawal pada baris baru setelah deklarasi kelas, akan tetapi kita dapat juga menempatkannya pada awal baris. Sehingga code tersebut dapat ditulis seperti: Tiga baris selanjutnya adalah comment pada Java. Comment: – Catatan yang ditulis sebagai dokumentasi pada sebuah bagian code. – Comment bukanlah bagian dari program, akan tetapi digunakan untuk tujuan dokumentasi. – Dengan menambahkan comment pada source code merupakan cara yang baik untuk berlatih pemrograman. public class Hello { /** * program Java My first */ Mempelajari Program Java Pertama

Upload: dotu

Post on 03-Apr-2019

235 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

JAVA Education Network Indonesia

jeni.jardiknas.org

Dasar PemrogramanPengenalan Pemrograman 1

Tujuan

Setelah menyelesaikan bab ini, siswa diharapkan mampu:

• Mengidentifikasi bagian-bagian dasar program Java

• Membedakan beberapa hal yang penting pada Java seperti, Java literal, tipe data primitif, tipe variabel, identifier dan operator.

• Membuat program Java sederhana dengan menggunakan konsep yang telah dipelajari pada bab ini.

Mempelajari Program Java Pertama

1 public class Hello2 {3 /**4 * Program Java My first 5 */6 public static void main( String[] args ){

1 //menampilkan string Hello world pada layar2 System.out.println(“Hello world”);

1 }2 }

• Deklarasi nama dari class yaitu Hello

• Pada Java, semua code harus berada di dalam deklarasi sebuah class.

• Class menggunakan akses berupa akses public, hal ini bisa membuat class Hello bisa diakses oleh class lain yang berada di luar packages (packages adalah sekumpulan dari class). Kita akan membahas packages dan akses class pada bab selanjutnya.

� public class Hello� {� /**� * Program Java My first

� */

Mempelajari Program Java Pertama

� public class Hello � {

� /**� * Program Java My first � */

Mempelajari Program Java Pertama

• Baris berikutnya merupakan tanda kurung kurawal { yang merupakan awal dari sebuah blok.

• Pada code ini, kita menempatkan tanda kurung kurawal pada baris baru setelah deklarasi kelas, akan tetapi kita dapat juga menempatkannya pada awal baris. Sehingga code tersebut dapat ditulis seperti:

• Tiga baris selanjutnya adalah comment pada Java.

• Comment:

– Catatan yang ditulis sebagai dokumentasi pada sebuah bagian code.

– Comment bukanlah bagian dari program, akan tetapi digunakan untuk tujuan dokumentasi.

– Dengan menambahkan comment pada source code merupakan cara yang baik untuk berlatih pemrograman.

� public class Hello � {� /**

� * program Java My first � */

Mempelajari Program Java Pertama

Page 2: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

• Merupakan nama dari sebuah method pada class Hello yaitu main method.

• Main method merupakan starting point pada program Java.

• Semua program Java kecuali Applet dijalankan pada method main.

• Pastikan untuk mengikuti tanda yang tepat

� public class Hello � {� /**

� * program Java My First� */� public static void main( String[] args ){

Mempelajari Program Java Pertama

• Baris selanjutnya adalah comment pada Java.

� public class Hello

� {� /**� * program Java My First� */

� public static void main( String[] args ){

� //menampilkan string “Hello world” pada layar

Mempelajari Program Java Pertama

• Command System.out.println() mencetak text yang ada antara tanda petik ganda pada layar.

� public class Hello � {� /**

� * program Java My First� */� public static void main( String[] args ){

� //menampilkan string “Hello world” pada layar� System.out.println(“Hello world”);

Mempelajari Program Java Pertama

• Dua baris berikutnya yang terdapat dua tanda kurung kurawal digunakan untuk menutup method main dan deklarasi class.

� public class Hello � {� /**

� * program Java My First� */� public static void main( String[] args ){

� //menampilkan string “Hello world” pada layar� System.out.println(“Hello world”);

� }� }

Mempelajari Program Java Pertama

Panduan Pemrograman

1. Program Java Anda harus diakhiri dengan ekstensi berupa .java.

2. Nama file harus sama dengan nama dari class public. Sebagai contoh, apabila nama dari class public adalah Hello, anda harus menamakan filenya Hello.java.

3. Anda sebaiknya menuliskan comment untuk menjelaskan perilaku dari sebuah class, atau perilaku dari sebuah method.

Java Comments

• 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

– C++ Style Comment

– C Style Comment

– Special Javadoc Comment

Page 3: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Java Comments

• C++-Style Comment

– C++ Style comments diawali dengan tanda //

– Semua text sesudah // merupakan sebuah comment

– Contoh:// Ini adalah C++ style atau

single line comments

Java Comments

• 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 */

Java Comments

• Special Javadoc Comments

– Special Javadoc comment digunakan untuk membuat sebuah dokumentasi HTML untuk program Java Anda.

– Anda dapat membuat javadoc comment dengan mengawali baris dengan /** dan mengakhirinya dengan */.

– Seperti C-style comments, comment ini dapat memuat banyak baris.

– Comment ini dapat memuat tags untuk menambah informasi pada comment Anda.

– Contoh:/** This is an example of special java doc

comments used for \n generating an html

documentation. It uses tags like:

@author Florence Balagtas

@version 1.2

*/

Java Statements

• Statement

– Satu atau beberapa baris code diakhiri dengan sebuah tanda titik koma.

– Contoh:System.out.println(“Hello world”);

Java Blocks

• 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”);}

Panduan Pemrograman Java Statement dan Block

1. Untuk membuat block, Anda dapat menempatkan kurung kurawal buka satu baris setelah deklarasi block. Contohnya:

public static void main(String[] args){

atau Anda dapat menambahkannya pada baris berikutnya seperti,

public static void main( String[] args )

{

Page 4: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Panduan Pemrograman Java Statement dan Block

2. 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");

}

Java Identifiers

• 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.

Java Identifiers

• 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. Kita akan mempelajari lebih tentang Java keyword pada bab selanjutnya.

Panduan Pemrograman Java Identifiers

1. Untuk penamaan class, gunakan huruf kapital pada huruf awal dari nama class, contohnya,

ThisIsAnExampleOfClassName

2. Untuk nama dari method dan variabel, huruf awal menggunakan huruf kecil. Contohnya,

thisIsAnExampleOfMethodName

Panduan Pemrograman Java Identifiers

3. 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.

4. Hindari penggunaan garis bawah pada awal identifier seperti _read atau _write.

Java Keywords

• 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 Java keyword

Page 5: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Java Keywords Java Literals

• Literal adalah token (tanda) yang tidak berubah atau konstan.

• Beberapa tipe literal dari Java adalah:

– Integer Literals

– Floating-Point Literals

– Boolean Literals

– Character Literals

– String Literals

Java Literals: Integer

• Integer literals memiliki beberapa bentuk yaitu:

– decimal (base 10)

– hexadecimal (base 16)

– octal (base 8).

Java Literals: Integer

• Penandaan khusus pada saat menggunakan integer literal pada program:

– Decimal

• Tidak ada penandaan khusus

• contoh: 12

– Hexadecimal

• Diawali dengan 0x atau 0X

• contoh: 0xC

– Octal

• Diawali dengan 0

• contoh: 014

Java Literals: Floating Point

• Mewakili bilangan desimal dengan pecahan

– Contoh: 3.1416

• Dapat ditulis dengan notasi standard atau scientific

– Contoh: 583.45 (standard), 5.8345e2 (scientific)

Java Literals: Boolean

• Boolean literal hanya memiliki dua nilai,

true atau false.

Page 6: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Java Literals: Character

• Character Literal mewakili satu Unicode characters.

• Unicode character

– Adalah 16-bit character set yang menggantikan 8-bit ASCII character set.

– Unicode mengijinkan pengisian simbol dan special character dari bahasa lain.

Java Literals: Character

• Untuk menggunakan sebuah character literal, tandai character dengan memberikan tanda petik satu diantaranya.

• Contoh

– Huruf a, diwakili dengan 'a'.

– Special character seperti newline character menggunakan tanda backslash diikuti dengan character code. Contoh, '\n' untuk newline character, '\r' untuk carriage return, '\b' untuk backspace.

Java Literals: String

• String literal mewakili banyak character dan ditandai dengan tanda petik ganda.

• Contoh dari string literal adalah, “Hello World”.

Tipe Data Primitif

• Bahasa pemrograman Java memiliki delapan tipe data primitif.

– boolean (logical)

– char (textual)

– byte

– short

– int

– long (integral)

– double

– float (floating point).

Tipe Data Primitif: Logical-boolean

• Tipe data boolean mewakili dua pernyataan: true dan false.

• Contoh,boolean result = true;

• Contoh diatas, mendeklarasikan sebuah variabel bernama result sebagai tipe data boolean dan memberikan nilai true.

Tipe Data Primitif: Textual-char

• Sebuah tipe data character (char), mewakili satu Unicode character.

• Ditutup dengan tanda petik satu (' ').

• Contoh,‘a’ //huruf a

‘\t’ //character tab

• Untuk mewakili special character seperti ' (tanda petik satu) atau “ (tanda petik ganda), gunakan tanda backslash \. Contoh,

'\'' //untuk tanda petik satu

'\"' //untuk tanda petik ganda

Page 7: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Tipe Data Primitif: Textual-char

• Meskipun String bukanlah tipe data primitif (merupakan Class), kita akan memperkenalkan String pada bab ini.

• String mewakili tipe data yang mengandung banyak character. String bukanlah tipe data primitif, akan tetapi sebuah class.

• Ditutup dengan tanda petik ganda (“”).

• Contoh,String message=“Hello world!”;

Tipe Data Primitif: Integral – byte, short, int & long

• Tipe data integral pada Java memiliki tiga bentuk –desimal, oktal atau heksadesimal.

• Contoh,2 //nilai desimal 2

077 //Awalan 0 menandakan nilai oktal

0xBACC //Awalan 0x menandakan nilai

heksadesimal

• Tipe integral menggunakan int sebagai tipe data default.

• Anda dapat mendefinisikan nilai longnya dengan menambahkan huruf l atau L.

• Contoh:10L

Tipe Data Primitif: Integral – byte, short, int & long

• Tipe data integral memiliki rentang nilai:

Tipe Data Primitif: Integral – byte, short, int & long

• Panduan pemrograman:

Untuk mendefinisikan nilai long, tidak disarankan menggunakan huruf L kecil karena akan sulit untuk membedakan dengan angka 1.

Tipe Data Primitif: Floating Point – float and double

• Tipe floating point menggunakan double sebagi tipe data default.

• Floating-point literal memberikan nilai desimal atau salah satu dari nilai berikut ini,

E atau e //(nilai exponen)

F atau f //(float)

D atau d //(double)

• Contoh, 3.14 //Sebuah floating-point (double)

6.02E23 //Nilai floating-point yang

besar

2.718F //Sebuah nilai float

123.4E+306D//Sebuah nilai double dengan

redundan D

Tipe Data Primitif: Floating Point – float and double

• Tipe data floating-point memiliki nilai rentang:

Page 8: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Variabel

• Variabel adalah sebuah item dari data yang digunakan untuk menyimpan sebuah nilai dari objek.

• Variabel memiliki:

– Tipe data

• Tipe data merupakan tipe dari nilai yang dapat disimpan variabel.

– Nama

• Nama variabel harus mengikuti aturan seperti identifier.

Deklarasi dan Inisialisasi Variabel

• Mendeklarsikan variabel:

<tipe data> <nama> [=inisialisasi

nilai];

• Catatan: Nilai yang berada antara tanda <> adalah nilai yang harus ada, sedangkan nilai yang berada antara tanda [] adalah optional (boleh tidak diisi).

Deklarasi dan Inisialisasi Variabel:

Contoh Program

� public class VariableSamples { � public static void main( String[] args ){ � //deklarasikan sebuah tipe data dengan nama variabel � // result dan tipe data boolean

� boolean result; � //deklarasikan sebuah tipe data dengan nama variabel� // option dan tipe data char � char option; � option = 'C'; //memberi nilai 'C' pada variabel option

� //deklarasikan sebuah tipe data dengan nama variabel

� //grade, tipe data double dan nilai inisialisasi 0.0� double grade = 0.0; � }� }

Deklarasi dan Inisialisasi Variabel: Panduan Pemrograman

1. Merupakan hal yang baik dilakukan untuk menginisialisasi variabel setelah Anda mendeklarasikannya.

2. Gunakan nama yang deskriptif untuk menamakan variabel Anda. Contoh, jika anda ingin mempunyai variabel yang mengandung nilai grade dari siswa, beri nama variabel tersebut dengan grade, bukan dengan huruf random.

Deklarasi dan Inisialisasi Variabel: Panduan Pemrograman

3. Deklarasikan satu variabel pada satu baris code. Contohnya pada deklarasi variabel-variabel berikut ini,

double exam=0;

double quiz=10;

double grade = 0;

adalah lebih baik daripada deklarasi berikut ini,

double exam=0, quiz=10, grade=0;

Mencetak Nilai Variabel

• Untuk mencetak nilai dari sebuah variabel, kita dapat menggunakan command berikut ini:System.out.println()

System.out.print()

Page 9: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Outputting Variable Data: Sample Program

1 public class OutputVariable {

2 public static void main( String[] args ){3 int value = 10;4 char x;

5 x = ‘A’;

1 System.out.println( value );

2 System.out.println( “The value of x=“ + x );3 }4 }

Program diatas akan memberikan output yaitu:

10

The value of x=A

System.out.println() vs. System.out.print()

• System.out.println()

– Memberikan satu baris baru pada akhir data output

• System.out.print()

– Tidak memberikan baris baru pada akhir data output

• Program 1:

Output:HelloWorld

• Program 2:

Output:HelloWorld

Contoh: System.out.println() vs.System.out.print()

System.out.print(“Hello”);

System.out.print(“World”);

System.out.println(“Hello”);System.out.println(“World”);

Reference Variables vs. Primitive Variables

• Terdapat dua tipe variabel di Java:

– Primitive Variables

– Reference Variables

• Primitive Variables

– Adalah variabel dengan tipe data primitif

– Menyimpan data di memori dimana lokasi variabel tersebut berada

Reference Variables vs. Primitive Variables

• Reference Variables

– Variabel yang disimpan pada alamat di lokasi memori

– Menunjuk pada lokasi memory yang lain dimana data tersebut berada

– Ketika Anda mendeklarasikan variabel pada sebuah class, Anda sebenarnya mendeklarasikan reference variabel pada object di class tersebut.

Contoh

• Misalkan kita memiliki dua variabel dengan tipe data int dan String.int num = 10;

String name = "Hello"

Page 10: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Contoh

• Gambar di bawah ini adalah lokasi memory yang ada pada komputer, dimana Anda memiliki alamat pada cell memory berupa nama variabel dan data yang dimiliki.

Operator

• Beberapa tipe operator:

– arithmetic operators

– relational operators

– logical operators

– conditional operators

• Operator-operator diatas memiliki ciri tertentu sehingga compiler bisa mengetahui operator mana yang akan dievaluasi terlebih dahulu pada saat banyak operator digunakan pada satu statement

Arithmetic Operators Arithmetic Operators: Contoh Program

1 public class ArithmeticDemo {2 public static void main(String[] args){

3 //beberapa angka4 int i = 37;5 int j = 42;6 double x = 27.475;7 double y = 7.22;8 System.out.println("Nilai Variabel...");9 System.out.println(" i = " + i);

10 System.out.println(" j = " + j);11 System.out.println(" x = " + x);12 System.out.println(" y = " + y);

System.out.println("Penjumlahan...");13 System.out.println(" i + j = " + (i + j));14 System.out.println(" x + y = " + (x + y));

Arithmetic Operators: Contoh Program

1 //pengurangan angka

2 System.out.println("Pengurangan...");3 System.out.println(" i - j = " + (i – j));4 System.out.println(" x - y = " + (x – y));

1 //pengalian angka2 System.out.println("Pengalian...");3 System.out.println(" i * j = " + (i * j));

4 System.out.println(" x * y = " + (x * y));

1 //pembagian angka2 System.out.println("Pembagian...");3 System.out.println(" i / j = " + (i / j));4 System.out.println(" x / y = " + (x / y));

Arithmetic Operators: Contoh Program

1 //Penghitungan modulus (sisa pembagian)2 System.out.println("Penghitungan modulus...");3 System.out.println(" i % j = " + (i % j));4 System.out.println(" x % y = " + (x % y));

1 //Penghitungan kombinasi variabel2 System.out.println("kombinasi variabel...");3 System.out.println(" j + y = " + (j + y));4 System.out.println(" i * x = " + (i * x));5 } 6}

Page 11: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Arithmetic Operators: Contoh Output Program

Nilai variabel...i = 37j = 42x = 27.475y = 7.22

Penjumlahan...

i + j = 79x + y = 34.695

Pengurangan...i - j = -5x - y = 20.255

Pengalian...

i * j = 1554x * y = 198.37

Pembagian...i / j = 0x / y = 3.8054 Computing

Nilai Modulus...i % j = 37x % y = 5.815

Kombinasi variabel...j + y = 49.22i * x = 1016.58

Arithmetic Operators

• Catatan

– Ketika nilai integer dan angka floating-point digunakan sebagai operand pada operasi aritmatika, hasilnya akan menjadi floating point. Nilai secara implisit integer diubah menjadi nilai floating-point sebelum operasi berlangsung.

Operator Increment & Decrement

• unary increment operator (++)

• unary decrement operator (--)

• Increment dan decrement operator akan menambah dan mengurangi nilai dengan 1.

• Contoh, ekspresi berikut ini,

count=count + 1;//increment the

value of count by 1

adalah sama dengan,

count++;

Operator Increment & Decrement

Operator Increment & Decrement

• Operator increment dan decrement dapat diletakkan sebelum atau sesudah operand.

• Ketika digunakan sebelum operand, hal ini akan membuat variabel ditambah atau dikurangi dengan nilai 1, dan selanjutnya nilai yang baru akan digunakan pada ekspresi selanjutnya.

• Contoh,int i = 10;

int j = 3;int k = 0;k = ++j + i; //akan menghasilkan k = 4+10 = 14

Operator Increment & Decrement

• Ketika operator increment dan decrement diletakkan setelah operand, nilai lama dari variabel akan digunakan pada ekspresi selanjutnya.

• Contoh,int i = 10;

int j = 3; int k = 0; k = j++ + i; //akan menghasilkan k = 3+10 =

13

Page 12: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Operator Increment & Decrement Panduan Pemrograman

• Gunakanlah ekspresi yang mengandung operator increment dan decrement yang simpel dan mudah dimengerti.

Relational Operators

• Operator relational membandingkan beberapa nilai dan menentukan hubungan antara nilai-nilai tersebut.

• Output dari perbandingan tersebut adalah nilai boolean antara true atau false.

Relational Operators: Contoh Program

1 public class RelationalDemo{2 public static void main(String[] args){3 //beberapa angka4 int i = 37;5 int j = 42;6 int k = 42;

7 System.out.println("Nilai variabel...");8 System.out.println(" i = " +i);9 System.out.println(" j = " +j);10 System.out.println(" k = " +k);11 //lebih besar dari12 System.out.println("Lebih besar...");13 System.out.println(" i > j = "+(i>j));//false

14 System.out.println(" j > i = "+(j>i));//true15 System.out.println(" k > j = "+(k>j));//false

Relational Operators: Contoh Program

1 //lebih besar atau sama dengan1 System.out.println("lebih besar atau sama dengan...");2 System.out.println(" i >= j = "+(i>=j));//false3 System.out.println(" j >= i = "+(j>=i));//true4 System.out.println(" k >= j = "+(k>=j));//true

5 //lebih kecil6 System.out.println("lebih kecil...");7 System.out.println(" i < j = "+(i<j));//true8 System.out.println(" j < i = "+(j<i));//false9 System.out.println(" k < j = "+(k<j));//false10 //lebih kecil atau sama dengan11 System.out.println("lebih kecil atau sama dengan...");

12 System.out.println(" i <= j = "+(i<=j));//true13 System.out.println(" j <= i = "+(j<=i));//false14 System.out.println(" k <= j = "+(k<=j));//true

Relational Operators: Sample Program

1 //sama dengan2 System.out.println("sama dengan...");3 System.out.println(" i == j = " + (i==j));//false4 System.out.println(" k == j = " + (k==j));//true 5 //tidak sama dengan

6 System.out.println("tidak sama dengan...");7 System.out.println(" i != j = " + (i!=j));//true8 System.out.println(" k != j = " + (k!=j));//false9 }10 }

Relational Operators: Contoh Output Program

Nilai variabel...

i = 37j = 42k = 42

Lebih besar...i > j = falsej > i = truek > j = false

Lebih besar atau sama dengan...i >= j = falsej >= i = truek >= j = true

Lebih kecil...i < j = truej < i = false

k < j = false

Lebih kecil atau sama dengan...

i <= j = truej <= i = falsek <= j = true

Sama dengan...i == j = falsek == j = true

Tidak sama dengan...

i != j = truek != j = false

Page 13: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Logical Operators

• Logical operator memiliki satu atau dua boolean operand yang akan memberikan nilai hasil boolean.

• Ada enam logical operator yaitu:

– && (logical AND)

– & (boolean logical AND)

– || (logical OR)

– | (boolean logical inclusive OR)

– ^ (boolean logical exclusive OR)

– ! (logical NOT)

Logical Operators

• Operasi dasar dari operasi logical adalah, x1 op x2

dimana,

x1, x2 – dapat sebagai ekspresi boolean, variabel, atau konstantaop – bisa sebagai operator &&, &, ||, | atau ^ .

• Berikut ini adalah tabel kebenaran, hasil-hasil dari operasi dari kombinasi nilai dari x1 dan x2.

• Berikut ini adalah tabel kebenaran untuk && dan &,

Logical Operators: &&(logical) dan &(boolean logical) AND

• Perbedaan mendasar antara operator && dan &:

– && mendukung short-circuit evaluations (atau partial evaluation), sedangkan & tidak mendukung.

• Terdapat sebuah ekspresi:exp1 && exp2

– && akan mengecek ekspresi dari exp1, dan selanjutnya akan memberikan nilai false jika exp1 adalah false.

– Jika exp1 adalah false, operator tidak mengecek nilai exp2 karena hasilnya akan tetap false tanpa mengetahui nilai exp2.

• Sebaliknya, operator & selalu mengecek semua ekspresi antara exp1 dan exp2 sebelum memberikan jawaban.

Logical Operators: &&(logical) dan &(boolean logical) AND

� public class TestAND {� public static void main( String[] args ){� int i = 0;� int j = 10;� boolean test= false;

� //contoh &&� test = (i > 10) && (j++ > 9);� System.out.println(i);� System.out.println(j);� System.out.println(test);� //contoh &� test = (i > 10) & (j++ > 9);

� System.out.println(i);� System.out.println(j);� System.out.println(test);� }� }

Logical Operators: &&(logical) dan &(boolean logical) AND

• Output dari program,010false011false

• Perlu dicatat, bahwa j++ pada baris yang mengandung operator && tidak dicek setelah diketahui bahwa ekspresi (i>10) bernilai false.

Logical Operators: &&(logical) dan &(boolean logical)

Page 14: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Logical Operators: || (logical) dan | (boolean logical) inclusive OR

• Berikut ini adalah tabel kebenaran dari || dan |,

• Perbedaan dasar antara operator || dan |.

– || mendukung short-circuit evaluations (atau partial evaluations), sedangkan | tidak.

• Terdapat sebuah ekspresi:exp1 || exp2

– || akan mengecek ekspresi exp1, dan langsung memberikan nilai true jika nilai dari exp1 adalah true.

– Jika exp1 true, operator tidak mengecek nilai dari exp2 karena apapun nilai dari exp2 akan tetap menghasilkan nilai true.

– Sedangkan operator | akan melakukan pengecekan pada exp1 dan exp2 sebelum memberikan nilai.

Logical Operators: || (logical) dan | (boolean logical) inclusive OR

� public class TestOR {� public static void main( String[] args ){� int i = 0;� int j = 10;

� boolean test= false;� //contoh ||� test = (i < 10) || (j++ > 9);� System.out.println(i);� System.out.println(j);� System.out.println(test);� //contoh |

� test = (i < 10) | (j++ > 9);� System.out.println(i);� System.out.println(j);� System.out.println(test);� }� }

Logical Operators: || (logical) dan | (boolean logical) inclusive OR

• Output program adalah,010true011true

• Perlu dicatat, bahwa j++ pada baris yang mengandung operator || tidak dicek setelah diketahui nilai dari ekspresi (i<10) adalah true.

Logical Operators: || (logical) dan | (boolean logical) inclusive OR

Logical Operators: ^ (boolean logical exclusive OR)

• Berikut ini adalah tabel kebenaran ^,

• Hasil dari operasi operasi eksklusif OR adalah TRUE, jika dan hanya jika satu operand yang bernilai true dan operand lain bernilai false.

• Perlu dicatat, bahwa semua operand akan dicek untuk menentukan hasil dari operasi eksklusif OR.

Logical Operators: ^ (boolean logical exclusive OR)

1 public class TestXOR {

2 public static void main( String[] args ){3 boolean val1 = true;4 boolean val2 = true;5 System.out.println(val1 ^ val2);6 val1 = false; val2 = true;7 System.out.println(val1 ^ val2);8 val1 = false; val2 = false;

9 System.out.println(val1 ^ val2);10 val1 = true; val2 = false;11 System.out.println(val1 ^ val2);12 }13 }

Page 15: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

• Output dari program,false true false true

Logical Operators: ^ (boolean logical exclusive OR)

Logical Operators: ! ( logical NOT)

• Logical NOT hanya memerlukan satu argumen, argumen tersebut dapat berupa ekspresi, variabel atau konstanta.

• Berikut ini adalah tabel kebenaran !,

Logical Operators: ! ( logical NOT)

1 public class TestNOT {2 public static void main( String[] args ){

3 boolean val1 = true;4 boolean val2 = false;5 System.out.println(!val1);6 System.out.println(!val2);7 } 8 }

• Output dari program adalah, false true

Logical Operators: Conditional Operator (?:)

• Conditional operator ?:

– Merupakan ternary operator.

• Hal ini berarti bahwa diperlukan tiga argumen bersamaan dari sebuah ekspresi conditional.

– Struktur dari ekspresi yang menggunakan conditional operator adalah

exp1?exp2:exp3

dimana,

exp1 – adalah ekspresi boolean yang memberikan hasil / nilai true atau false

– Hasil:

Jika exp1 adalah true, maka nilai dari exp2 yang akan diberikan.

Jika false, maka nilai dari exp3 yang diberikan.

Logical Operators: Conditional Operator (?:)

1 public class ConditionalOperator {

2 public static void main( String[] args ){3 String status = "";4 int grade = 80;5 //Status dari siswa6 status = (grade >= 60)?"Passed":"Fail";7 //Cetak status8 System.out.println( status );

9 }10 }

• Output dari program, Passed

Logical Operators: Conditional Operator (?:)

Page 16: JAVA Education Network Indonesia Dasar Pemrograman fileseperti, Java literal, tipe data primitif, tipe variabel, ... • Membuat program Java sederhana dengan menggunakan konsep yang

Operator Precedence Operator Precedence

• Terdapat ekspresi yang rumit seperti,

6%2*5+4/2+88-10

dapat ditulis ulang dan memberikan tanda kurung pada berdasarkan prioritas operator,

((6%2)*5)+(4/2)+88-10;

Operator Precedence: Panduan Pemrograman

• Untuk menghindari kebingungan pada proses matematika selalu gunakan ekspresi yang simpel dengan menggunakan tanda kurung.

Kesimpulan

• Java Comments (C++-Style Comments, C-Style Comments, Special Javadoc Comments)

• Java statements, blocks, identifiers, keywords

• Java Literals (integer, floating point, boolean, character, String)

• Tipe data primitif( boolean, char, byte, short, int, long, float, double)

Kesimpulan

• Variables (deklarasi,inisialisasi, output)

• System.out.println() vs. System.out.print()

• Reference Variables vs. Primitive Variables

• Operators (Arithmetic operators, Increment dan Decrement operators, Relational operators, Logical operators, Conditional Operator (?:), Operator Precedence)