• Tidak ada hasil yang ditemukan

JENI Intro1 Bab04 Dasar Dasar Pemrograman

N/A
N/A
Protected

Academic year: 2017

Membagikan "JENI Intro1 Bab04 Dasar Dasar Pemrograman"

Copied!
34
0
0

Teks penuh

(1)

Pengenalan Pem rogram an I 1

BAB 4

D a sa r - D a sa r Pe m r ogr a m a n

4 .1 Tuj ua n

Pada bagian ini, kit a akan m endiskusikan m engenai bagian dasar pem rogram an Java. Kit a akan m em ulai dengan m encoba m enj elaskan bagian dasar dari program Hello.j ava yang t elah diperkenalkan pada bab sebelum nya. Kit a j uga akan m endiskusikan beberapa pedom an cara m enulis script at au pet unj uk penulisan kode dalam penulisan program yang lebih efekt if dan m udah dibaca.

Pada akhir pem bahasan, diharapkan pem baca dapat :

 Mengident ifikasi bagian dasar dari program Java

Mem bedakan m ana yang t erm asuk ke dalam Java lit erals, t ipe dat a dasar, t ipe variabel, pengident ifikasian dan operat or

Mengem bangkan program Java sederhana m enggunakan konsep yang dipelaj ari pada bab ini

4 .2 M e nga n a lisa pr ogr a m Ja va Pe r t a m a

Sekarang, kit a akan m encoba unt uk m enganalisa program Java pert am a :

public class Hello {

/**

* My first java program */

public static void main(String[] args) {

//menampilkan string ”Hello world” pada layar

System.out.println("Hello world!"); }

}

Baris pert am a kode :

public class Hello

(2)

Pengenalan Pem rogram an I 2 m erupakan kum pulan class- class) . Kit a akan m em bahas lebih dalam m engenai package dan

access specifier pada pem bahasan selanjut nya.

Baris berikut nya yait u yang t erdiri at as kurung kurawal { m enandakan awal blok. Pada kode ini, kit a m enem pat kan kurung kurawal pada baris selanj ut nya set elah deklarasi class, bagaim anapun, kit a dapat j uga m elet akkan kurung kurawal ini set elah baris pert am a dari kode yang kit a t ulis. Jadi, kit a dapat m enulis kode kit a sebagai berikut :

public class Hello {

at au

public class Hello {

Tiga baris selanjut nya m enandakan adanya kom ent ar Java. Kom ent ar adalah sesuat u yang digunakan unt uk m endokum ent asikan set iap bagian dari kode yang dit ulis. Kom ent ar bukan m erupakan bagian dari program it u sendiri, t et api digunakan unt uk t uj uan dokum ent asi. Kom ent ar it u sendiri dapat dit am bahkan pada kode yang Anda t ulis sebagai pet unj uk yang dapat m em bant u proses pem belaj aran pem rogram an yang baik.

/**

* My first java program * /

Kom ent ar dinyat akan dengan t anda “ / * ” dan “ * / ” . Segala sesuat u yang ada diant ara t anda t ersebut diabaikan oleh com piler Java, dan m ereka hanya dianggap sebagai kom ent ar. Baris selanj ut nya,

public static void main(String[] args) {

at au dapat j uga dit ulis sebagai berikut ,

public static void main(String[] args) {

m engindikasikan nam a suat u m et hod dalam class H e llo yang bert indak sebagai m e t hod u t a m a . Met hod ut am a adalah t it ik awal dari suat u program Java. Sem ua program kecuali applet yang dit ulis dalam bahasa Java dim ulai dengan m et hod ut am a. Yakinkan unt uk m engikut i kaidah penulisan t anda yang benar.

Baris selanj ut nya j uga m erupakan kom ent ar,

//Menampilkan string "Hello world" pada layar

Sekarang kit a m em pelaj ari 2 cara unt uk m em buat kom ent ar. Cara pert am a adalah dengan m enem pat kan kom ent ar dalam / * dan * / , dan cara yang lain adalah dengan m enuliskan t anda / / pada awal kom ent ar

(3)

Pengenalan Pem rogram an I 3 System.out.println("Hello world!");

m enam pilkan t eks “ Hello World! ” pada layar. Perint ah Syst em .out .print ln( ) , m enam pilkan t eks yang diapit oleh t anda double put e ( “ ” ) pada layar.

Dua baris t erakhir yang t erdiri at as dua kurung kurawal digunakan unt uk m enut up m et hod ut am a dan m asing-m asing class secara berurut an.

Pe t u nj u k Pe n u lisan Progr a m :

1. Program Java yang Anda buat harus selalu diakhiri dengan ekst ensi file .j a va.

2. Nam a File seharusnya sesuai/ sam a dengan nam a class public nya. Sebagai cont oh, j ika nam a class public Anda adalah H e llo, Anda harus m enyim pan file t ersebut dengan nam a H e llo.j a va.

(4)

Pengenalan Pem rogram an I 4

4 .3 . Kom e n t a r pa da Ja va

Kom ent ar adalah cat at an yang dit ulis pada kode dengan t ujuan sebagai bahan dokum ent asi. Teks t ersebut bukan bagian dari program dan t idak m em pengaruhi j alannya program .

Java m endukung t iga j enis kom ent ar : C+ + st yle kom ent ar sat u baris, C st yle beberapa baris, dan kom ent ar j avadoc khusus

4 .3 .1 . Pen u lisa n Kom e n t a r C+ + St yle

Kom ent ar C+ + st yle diawali dengan / / . Sem ua t eks set elah / / dianggap sebagai kom ent ar. Sebagi cont oh,

// This is a C++ style or single line comments

4 .3 .2 . Pen u lisa n Kom e n t a r C St y le

Kom ent ar C-st yle at au juga disebut kom ent ar beberapa baris diawali dengan / * dan diakhiri dengan * / . Sem ua t eks yang ada diant ara dua t anda t ersebut dianggap sebagai kom ent ar. Tidak sepert i kom ent ar C+ + st yle, kom ent ar ini dapat m enj angkau beberapa baris. Sebagai cont oh,

/* this is an example of a

C style or multiline comments */

4 .3 .3 . Kom e n t a r Khu sus j a va doc

Kom ent ar j avadoc khusus digunakan unt uk m en- generat e dokum ent asi HTML unt uk program Java Anda. Anda dapat m encipt akan kom ent ar j avadoc dengan m em ulai baris dengan / * * dan m engakhirinya dengan * / . Sepert i Kom ent ar C_st yle, dapat j uga m enj angkau beberapa baris. Kom ent ar ini j uga dapat t erdiri at as t ag- t ag unt uk m enam bahkan lebih banyak inform asi pada kom ent ar Anda. Sebagai cont oh,

/**

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

(5)

Pengenalan Pem rogram an I 5

4 .4 . Pe rn ya t a a n da la m Ja va da n Blok

Pernyat aan adalah sat u at au lebih baris kode yang diakhiri dengan sem icolon. Sebagai cont oh unt uk pernyat aan t unggal adalah

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

Blok adalah sat u at au lebih pernyat aan yang t erbent ang ant ara kurung kurawal buka dan kurung kurawal t ut up yait u sekum pulan pernyat aan sebagai sat u unit kesat uan. Blok pernyat aan dapat dikum pulkan akan t et api t idak secara past i m em punyai ket erkait an fungsi. Beberapa j um lah spasi kosong diij inkan t erdapat didalam nya, sebagai cont oh dari suat u blok adalah :

public static void main( String[] args ){ System.out.println("Hello");

System.out.println("world"); }

Pe t u nj u k Pe n u lisan Progr a m :

1. Pada saat pem buat an blok, Anda dapat m elet akkan kurung kurawal buka pada baris dengan pernyat aan sepert i cont oh sebagai berikut ,

public static void main( String[] args ){

at au Anda dapat m elet akkan kurung kurawal pada baris selanj ut nya, sepert i,

public static void main( String[] args ) {

2. Anda harus m em beri j arak ( indent ) pernyat aan selanj ut nya set elah awal dari blok , sepert i cont oh berikut ,

public static void main( String[] args ){ System.out.println("Hello");

(6)

Pengenalan Pem rogram an I 6

4 .5 . Ja va I de nt ifie r

Java I dent ifier adalah suat u t anda yang m ewakili nam a-nam a variabel, m et hod, class, dsb. Cont oh dari I dent ifier adalah : Hello, m ain, Syst em , out .

Pendeklarasian Java adalah case-sensit ive. Hal ini berart i bahwa I dent ifier : Hello t idak sam a dengan hello. I dent ifier harus dim ulai dengan salah sat u huruf, underscore “ _” , at au t anda dollar “ $” . Hurufnya dapat berupa huruf besar m aupun huruf kecil. Karakt er selanj ut nya dapat m enggunakan nom or 0 sm pai 9.

I dent ifier t idak dapat m enggunakan kat a kunci dalam Java sepert i class, public, void, dsb. Selanj ut nya kit a akan berdiskusi lebih banyak t ent ang kat a kunci dalam Java.

Pe t u n j uk Pe nu lisa n Pr ogr a m :

1. Unt uk pem berian nam a dari class Java, diberikan huruf kapit al unt uk huruf pert am a pada nam a class. Unt uk nam a m et hod dan variabel, huruf pert am a dari kat a harus dim ulai dengan huruf kecil. Sebagi cont oh:

ThisIsAnExam pleOfClassNam e thisIsAnExam pleOfMet hodNam e

2. Pada kasus unt uk ident ifier lebih dari sat u kat a, m enggunakan huruf kapit al unt uk m engindikasikan awal dari kat a kecuali kat a pert am a. Sebagai cont oh, charArray, fileNum ber, ClassNam e.

(7)

Pengenalan Pem rogram an I 7

4 .6 . Ke yw or d da la m Ja va

Kat a kunci adalah ident ifier yang t elah dipesan unt uk didefinisikan sebelum nya oleh Java unt uk t uj uan t ert ent u. Anda t idak dapat m enggunakan keyword sebagai nam a variabel, class, m et hod Anda, dsb. Berikut ini adalah daft ar dari kat a kunci dalam Java ( Java Keywords) .

Kit a akan berdiskusi t ent ang sem ua art i dari m asing-m asing kat a kunci dan bagaim ana m ereka digunakan dalam proses penulisan program Java.

Ca t a t a n : t rue, false, dan null bukan t erm asuk kat a kunci akan t et api m ereka t erm asuk kat a- kat a khusus, j adi Anda t idak dapat m enggunakan m ereka sebagai nam a variabel pada program Anda.

4 .7 . Ja va Lit e r a ls

Lit erals adalah t anda bahwa t idak t erj adi perubahan at au konst an. Macam - m acam lit erals dalam Java adalah : I nt eger Lit erals, Float ing- Point Lit erals, Boolean Lit erals, Charact er Lit erals dan St ring Lit erals.

4 .7 .1 . I n t e ge r Lit e r a ls

I nt eger lit erals dibedakan dalam beberapa form at yang berbeda: de sim a l ( berbasis 10) ,

h e k sa desim a l ( berbasis 16) , and ok t a l ( berbasis 8) . Dalam penggunaan t ipe dat a int eger pada program , kit a harus m engikut i at uran penggunaan beberapa not asi khusus.

(8)

Pengenalan Pem rogram an I 8 Unt uk angka desim al, kit a t idak m em erlukan not asi khusus. Kit a hanya m enulis angka desim al sepert i apa adanya. unt uk angka heksadesim al, hal it u harus dit andai oleh “ 0x” at au “ 0X” . unt uk okt al, dit andai oleh“ 0” .

Sebagai cont oh, m ewakili angka 1 2. Penulisan dalam bent uk desim alnya adalah 1 2, Sem ent ara dalam heksadesim al, m enj adi 0 x C, dan dalam okt al, nilai t ersebut sam a dengan

0 1 4.

Default t ipe dat a unt uk int eger lit erals adalah in t. I nt adalah signed 32- bit value. Pada kasus- kasus t ert ent u Anda dapat berharap unt uk m em aksa int eger lit eral unt uk m enj adi t ipe dat a lon g dengan m enam bahkan karakt er “ l” or “ L” . t ipe dat a long dit andai oleh dit am pilkannya dat a dalam 64- bit . Kit a akan m em bahas m engenai t ipe dat a pada kesem pat an selanj ut nya.

4 .7 .2 . Floa t in g- Point Lit e r a ls

Float ing point lit erals m ewakili bent uk desim al dengan bagian yang t erpisah. Sebagai cont oh adalah 3.1415. Float ing point lit erals dapat dinyat akan dalam not asi st andard at au scient ific. Sebagai cont oh, 583.45 dinyat akan dalam not asi st andard, Sem ent ara 5.8345e2 dinyat akan dalam not asi scient ific.

Default Float ing point lit erals m em punyai t ipe dat a dou ble yang dinyat akan dalam 64- bit . Unt uk m enggunakan ket elit ian yang lebih kecil ( 32- bit ) floa t, hanya dengan m enam bahkan karakt er “ f” at au “ F” .

4 .7 .3 . Boole a n Lit e r a ls

Boolean lit erals hanya m em iliki dua nilai, t rue at au false.

4 .7 .4 . Ch a r a ct e r Lit e r a ls

Charact er Lit erals diwakili oleh karakt er single Unicode. Karakt er Unicode adalah 16- bit charact er set yang m enggant ikan 8- bit ASCI I charact er set . Unicode m em ungkinkan pengunaan sim bol dan karakt er khusus dari bahasa lain.

Unt uk m enggunakan charact er lit erals, karakt er t ersebut di dalam t anda single put e ( ' ') ( single quot e delim it ers) . Sebagai cont oh huruf a, diwakili sebagai ‘a ’.

Unt uk m enggunakan karakt er khusus sepert i karakt er baris baru, backslash digunakan diikut i dengan karakt er kode. Sebagai cont oh, ‘\ n’ unt uk karakt er baris baru at au gant i baris, ‘\ r’ unt uk m enyat akan nilai balik ( carriage ret urn) , ‘\ b’ unt uk backspace.

4 .7 .5 . St r in g Lit e r a ls

(9)

Pengenalan Pem rogram an I 9

4 .8 . Tipe D a t a Pr im it if

Bahasa pem rogram an Java m endefinisikan delapan t ipe dat a prim it if. Mereka diant aranya adalah boolean ( unt uk bent uk logika) , char (unt uk bent uk t ekst ual) , byt e, short , int , long ( int egral) , double and float (float ing point ) .

4 .8 .1 . logik a - boole a n

Tipe dat a boolean diwakili oleh dua pernyat aan : t rue dan false. Sebagai cont oh adalah,

boolean result = true;

Cont oh yang dit unj ukkan diat as, m endeklarasikan variabel yang dinam ai re su lt sebagai t ipe dat a boolea n dan m em berinya nilai tr u e.

4 .8 .2 . t e k su a l – ch a r

Tipe dat a charact er (char) , diwakili oleh karakt er single Unicode. Tipe dat a ini harus m em iliki ciri berada dalam t anda single quot es( ’ ’) . Sebagai cont oh,

‘a’ //Huruf a ‘\t’ //A tab

Unt uk m enam pilkan karakt er khusus sepert i ' ( single quot es) at au " ( double quot es) , m enggunakan karakt er escape \ . Sebagai cont oh,

'\'' //untuk single quotes '\"' //untuk double quotes

Meskipun St ring bukan m erupakan t ipe dat a prim it if (nam un m erupakan suat u Class) ,kit a akan m em perkenalkan m engenai pada bagian ini. St ring m ewakili t ipe dat a yang t erdiri at as beberapa karakt er. Mereka t idak t e r m a su k t ipe da t a pr im it if, m e la in k an su a t u cla ss.

Mereka m em iliki lit eral yang t erdapat diant ara t anda double quot es( “ ” ) .

Sebagai cont oh,

(10)

Pengenalan Pem rogram an I 10

4 .8 .3 . I n t e gr a l – byt e , sh or t , in t & long

Tipe dat a int egral dalam Java m enggunakan t iga bent uk- yait u desim al, okt al at au heksadesim al. Cont ohnya,

2 //nilai desimal 2

077 //angka 0 pada awal pernyataan mengindikasikan nilai oktal 0xBACC //karakter 0x mengindikasikan nilai heksadesimal

Tipe-t ipe int egral m em iliki default t ipe dat a yait u int . Anda dapat m erubahnya ke bent uk long dengan m enam bahkan huruf l at au L. Tipe dat a int egral m em iliki range sebagai berikut :

I n t e ge r Le n gth N a m e or Type Ra n ge

8 bits

byte

-2

7

to 2

7

-1

16 bits

short

-2

15

to 2

15

-1

32 bits

int

-2

31

to 2

31

-1

[image:10.612.130.482.248.428.2]

64 bits

long

-2

63

to 2

63

-1

Tabel 1: Tipe- t ipe int egral dan range- ny a

Petunjuk Penulisan Program:

(11)

Pengenalan Pem rogram an I 11

4 .8 .4 . Floa t in g Point – floa t da n dou ble

Tipe Float ing point m em iliki double sebagai default t ipe dat anya. Float ing- point lit eral t erm asuk salah sat unya desim al point at au salah sat u dari pilihan berikut ini,

E or e //(add exponential value) F or f //(float)

D or d //(double)

Cont ohnya adalah,

3.14 //nilai floating-point sederhana (a double) 6.02E23 //A nilai floating-point yang besar

2.718F //A nilai float size sederhana

123.4E+306D //A nilai double yang besar dengan nilai redundant D

Pada cont oh yang dit unj ukkan diat as, 23 set elah E pada cont oh kedua bernilai posit if. Cont oh t ersebut sam a dengan 6.02E+ 23. Tipe dat a Float ing- point m em iliki range sebagai berikut :

Pa n j an g Floa t N a m a a t a u Tipe Ra n ge

32 bit s float

-2

31

to 2

31

-1

64 bit s double

-2

63

to 2

63

-1

(12)

Pengenalan Pem rogram an I 12

4 .9 . Va r ia be l

Va r ia be l adalah it em yang digunakan dat a unt uk m enyim pan pernyat aan obj ek.

Variabel m em iliki t ipe da t a dan n a m a. Tipe dat a m enandakan t ipe nilai yang dapat dibent uk oleh variabel it u sendiri. N a m a va r ia be l harus m engikut i at uran unt uk ident ifier.

4 .9 .1 . D e k la r a si da n I n isia lisa si Va r ia be l

Unt uk deklarasi variabel adalah sebagai berikut ,

<data tipe> <name> [=initial value];

Ca t a t a n : Nilainya berada diant ara < > adalah nilai yang disyarat kan, sem ent ara nilai dalam t anda [ ] bersifat opt ional.

Berikut ini adalah cont oh program yang m endeklarasikan dan m enginisialisasi beberapa variabel,

public class VariableSamples {

public static void main( String[] args ){ //deklarasi tipe data dengan nama variable // result dan tipe data boolean

boolean result;

//deklarasi tipe data dengan nama variabel // option dan tipe data char

char option;

option = 'C'; //menandai 'C' sebagai option

//deklarasi tipe data dengan nama variabel

//grade, double tipe data dan telah di inisialisasi //to 0.0

double grade = 0.0; }

}

Pe t u nj u k Pe n u lisan Progr a m :

1. Sangat baik unt uk m enginisialisasi variabel yang Anda buat sepert i Anda m endeklarasikannya.

2. Gunakan nam a yang bersifat m enggam barkan deskript if unt uk variabel yang Anda buat , j ika Anda ingin m em punyai variabel yang t erdiri at as nilai siswa, beri nam a dengan nam a gr a de dan j angan hanya beberapa huruf random yang Anda pilih.

3. Deklarasikan sat u variabel t iap baris kode. Sebagai cont oh , deklarasi variabel adalah sebagai berikut ,

(13)

Pengenalan Pem rogram an I 13

double grade = 0; Bent uk yang lebih disukai ket ika m elakukan deklarasi adalah,

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

4 .9 .2 . M e n a m pilk a n D a t a Va r ia be l

Unt uk m engeluarkan nilai dari variabel yang diinginkan, kit a dapat m enggunakan perint ah sebagai berikut ,

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

Berikut ini adalah cont oh program ,

public class OutputVariable {

public static void main( String[] args ){ int value = 10;

char x; x = ‘A’;

System.out.println( value );

System.out.println( “The value of x=” + x ); }

}

Program t ersebut akan m engeluarkan t eks berikut pada layar,

10

The value of x=A

4 .9 .3 . Sy st e m .ou t .pr in t ln ( ) vs. Sy st em .ou t .pr in t ( )

Apa yang m em bedakan diant ara perint ah Syst em .out .print ln( ) and Syst em .out .print ( ) ? Yang pert am a m enam bahkan baris baru pada akhir dat a unt uk dikeluarkan, sem ent ara selanj ut nya t idak.

Perhat ikan pernyat aan t ersebut ,

System.out.print("Hello "); System.out.print("world!");

Pernyat aan t ersebut akan m enghasilkan out put berikut ini pada layar,

Hello world!

Sekarang pert hat ikan pernyat aan berikut ,

(14)

Pengenalan Pem rogram an I 14 Pernyat aan ini akan m enghasilkan out put sebagai berikut pada layar,

(15)

Pengenalan Pem rogram an I 15

4 .9 .4 . Va r ia be l Re fe r e n ce da n Va r ia b e l Pr im it if

Sekarang kit a akan m em bedakan dua t ipe variabel yang dim iliki oleh program Java. Ada

va r ia be l r efe re n ce dan var ia be l pr im it if .

Va r ia be l pr im it if adalah variabel dengan t ipe dat a prim it if. Mereka m enyim pan dat a dalam lokasi m em ori yang sebenarnya dim ana variabel t ersebut berada.

Va r ia be l Re fe r e nce adalah variabel yang m enyim pan alam at dalam lokasi m em ori. Yang m enunj uk ke lokasi m em ori dim ana dat a sebenarnya berada. Ket ika Anda m endeklarasikan variabel pada class t ert ent u, Anda sebenarnya m endeklarasikan reference variable dalam bent uk obj ek dalam classnya t ersebut .

Sebagai cont oh, Apabila kit a m em punyai dua variabel dengan t ipe dat a int dan St ring.

int num = 10;

String name = "Hello"

Dim isalkan ilust rasi yang dit unj ukkan dibawah ini adalah m em ori yang ada pada kom put er Anda, dim ana Anda m em iliki alam at dari set iap sel m em orinya, nam a variabel dan dat anya t erbent uk sebagai berikut .

Memory

Address

Variable

Name

Data

1001

num

10

:

:

1563

name

Address(2000)

:

:

:

:

2000

"Hello"

(16)

Pengenalan Pem rogram an I 16

4 .1 0 Ope r a t or

Dalam Java, ada beberapa t ipe operat or. Ada operat or arit m at ika, operat or relasi, operat or logika, dan operat or kondisi. Operat or ini m engikut i berm acam -m acam priorit as yang past i sehingga com pilernya akan t ahu yang m ana operat or unt uk dij alankan lebih dulu dalam kasus beberapa operat or yang dipakai bersam a-sam a dalam sat u pernyat aan.

4 .1 0 .1 Ope r a t or Ar it m a t ik a

Berikut ini adalah dasar operat or arit m at ika yang dapat digunakan unt uk m em buat suat u program Java,

Ope r a tor Pe n ggun a a n Ke t e r a n gan

+ op1 + op2 Menam bahkan op1 dengan op2

* op1 * op2 Mengalikan op1 dengan op2

/ op1 / op2 Mem bagi op1 dengan op2

% op1 % op2 Menghit ung sisa dari pem bagian op1

dengan op2

[image:16.612.124.512.241.433.2]

- op1 - op2 Mengurangkan op2 dari op1

(17)

Pengenalan Pem rogram an I 17 Berikut ini adalah cont oh program dalam penggunaan operat or- operat or ini :

public class aritmatikaDemo {

public static void main(String[] args) {

//sedikit angka int i = 37; int j = 42;

double x = 27.475; double y = 7.22;

System.out.println("Variable values..."); System.out.println(" i = " + i);

System.out.println(" j = " + j); System.out.println(" x = " + x);

System.out.println(" y = " + y); //penjumlahan angka System.out.println("Adding...");

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

//pengurangan angka

System.out.println("Subtracting...");

System.out.println(" i - j = " + (i - j)); System.out.println(" x - y = " + (x - y));

//perkalian angka

System.out.println("Multiplying...");

System.out.println(" i * j = " + (i * j)); System.out.println(" x * y = " + (x * y)); //pembagian angka

System.out.println("Dividing...");

System.out.println(" i / j = " + (i / j)); System.out.println(" x / y = " + (x / y));

//menghitung hasil modulus dari pembagian

System.out.println("Computing the remainder..."); System.out.println(" i % j = " + (i % j)); System.out.println(" x % y = " + (x % y));

//tipe penggabungan

System.out.println("Mixing tipes...");

System.out.println(" j + y = " + (j + y)); System.out.println(" i * x = " + (i * x)); }

}

Berikut ini adalah out put program ,

Variable values... i = 37

(18)

Pengenalan Pem rogram an I 18 x = 27.475

y = 7.22 i + j = 79 Adding...

x + y = 34.695 Subtracting... i - j = -5 x - y = 20.255 Multiplying... i * j = 1554 x * y = 198.37 Dividing...

i / j = 0 x / y = 3.8054

Computing the remainder... i % j = 37

x % y = 5.815 Mixing tipes... j + y = 49.22 i * x = 1016.58

(19)

Pengenalan Pem rogram an I 19

4 .1 0 .2 . Ope r a t or I n cr e m e n t da n D e cr e m e n t

Dari sisi operat or dasar arit m at ika, Java j uga t erdiri at as operat or unary increm ent ( + + ) dan operat or unary decrem ent ( - - ) . operat or increm ent dan decrem ent m enam bah dan m engurangi nilai yang t ersim pan dalam bent uk variabel angka t erhadap nilai 1.

Sebagai cont oh, pernyat aan,

count = count + 1; //increment nilai count dengan nilai 1

pernyat aan t ersebut sam a dengan,

count++;

Ope r a tor Pe n ggun a a n Ke t e r a n gan

+ + op+ +

Menam bahkan nilai 1 pada op;

m engevaluasi nilai op sebelum

diincrem ent asi/ dit am bahkan

+ + + + op

Menam bahkan nilai 1 pada op;

m engevaluasi nilai op set elah

diincrem ent asi/ dit am bahkan

- - op- -

Mengurangkan nilai 1 pada op;

m engevaluasi nilai op sebelum

didecrem ent asi/ dikurangkan

- - - - op

Mengurangkan nilai 1 pada op;

m engevaluasi nilai op set elah

[image:19.612.125.510.271.477.2]

didecrem ent asi/ dikurangkan

Tabel 4: operat or I ncrem ent dan Decrem ent

Operat or increm ent dan decrem ent dapat dit em pat kan sebelum at au sesudah operand.

Ket ika digunakan sebelum operand, akan m enyebabkan variabel diincrem ent at au didecrem ent dengan nilai 1, dan kem udian nilai baru digunakan dalam pernyat aan dim ana dia dit am bahkan. Sebagai cont oh,

int i = 10, int j = 3; int k = 0;

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

(20)

Pengenalan Pem rogram an I 20 int i = 10,

int j = 3; int k = 0;

k = j++ + i; //akan menghasilkan k = 3+10 = 13

Pe t u nj u k Pe n u lisan Progr a m :

Selalu m em buat pernyat aan yang m engandung operat or increm ent dan decrem ent unt uk t et ap dipaham i secara m udah dan sederhana.

4 .1 0 .3 Ope r a t or Re la si

Operat or Relasi m em bandingkan dua nilai dan m enent ukan ket erhubungan diant ara nilai-nilai t ersebut . Hasil keluarannya berupa n ila i boole a n yait u t rue at au false.

Ope r a tor Pe n ggun a a n Ke t e r a n gan

> op1 > op2 op1 lebih besar dari op2

> = op1 > = op2 op1 lebih besar dari at au sam a dengan op2

< op1 < op2 op1 kurang dari op2

< = op1 < = op2 op1 kurang dari at au sam a dengan op2

= = op1 = = op2 op1 sam a dengan op2

[image:20.612.113.527.301.512.2]

! = op1 ! = op2 op1 t idak sam a dengan op2

(21)

Pengenalan Pem rogram an I 21 Berikut ini adalah cont oh program yang m enggunakan operat or Relasi,

public class RelasiDemo {

public static void main(String[] args) { //beberapa nilai

int i = 37; int j = 42; int k = 42;

System.out.println("Nilai variabel..."); System.out.println(" i = " + i); System.out.println(" j = " + j); System.out.println(" k = " + k);

//lebih besar dari

System.out.println("Lebih besar dari...");

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

//lebih besar atau sama dengan

System.out.println("Lebih besar dari atau sama dengan..."); System.out.println(" i >= j = " + (i >= j)); //false System.out.println(" j >= i = " + (j >= i)); //true System.out.println(" k >= j = " + (k >= j)); //true

//lebih kecil dari

System.out.println("Lebih kecil dari...");

System.out.println(" i < j = " + (i < j)); //true System.out.println(" j < i = " + (j < i)); //false System.out.println(" k < j = " + (k < j)); //false //lebih kecil atau sama dengan

System.out.println("Lebih kecil dari atau sama dengan..."); System.out.println(" i <= j = " + (i <= j)); //true System.out.println(" j <= i = " + (j <= i)); //false System.out.println(" k <= j = " + (k <= j)); //true

//sama dengan

System.out.println("Sama dengan...");

System.out.println(" i == j = " + (i == j)); //false System.out.println(" k == j = " + (k == j)); //true

//tidak sama dengan

System.out.println("Tidak sama dengan...");

System.out.println(" i != j = " + (i != j)); //true System.out.println(" k != j = " + (k != j)); //false

} }

(22)

Pengenalan Pem rogram an I 22 Nilai variabel...

i = 37 j = 42 k = 42

Lebih besar dari... i > j = false j > i = true k > j = false

Lebih besar dari atau sama dengan... i >= j = false

j >= i = true k >= j = true Lebih kecil dari... i < j = true j < i = false k < j = false

Lebih kecil dari atau sama dengan... i <= j = true

(23)

Pengenalan Pem rogram an I 23

4 .1 0 .4 Ope r a t or logik a

Operat or logika m em iliki sat u at au lebih operand boolean yang m enghasilkan nilai boolean. Terdapat enam operat or logika yait u: && (logika AND) , & ( boolean logika AND) , | | ( logika OR) , | ( boolean logika inclusive OR) , ^ ( boolean logika exclusive OR) , dan ! (logika NOT) .

Pernyat aan dasar unt uk operasi logika adalah,

x1 op x2

(24)

Pengenalan Pem rogram an I 24

4 .1 0 .4 .1 & & ( logik a AND ) da n & ( boole a n logik a AND )

Berikut ini adalah t abel kebenaran unt uk && dan &,

x 1 x 2 H a sil

TRUE TRUE TRUE

TRUE FALSE FALSE

FALSE TRUE FALSE

[image:24.612.184.428.142.235.2]

FALSE FALSE FALSE

Tabel 6: Tabel Kebenaran unt uk & dan &&

Perbedaan dasar ant ara operat or && dan & adalah bahwa && m ensupport s shor t - cir cu it e va lu a t ion s ( at au evaluasi perbagian) , sem ent ara operat or & t idak. Apa art i dari pernyat aan t ersebut ?

Diberikan suat u pernyat aan,

exp1 && exp2

&& akan m engevaluasi pernyat aan exp1, dan segera m engem balikan nilai false dan m enyat akan bahwa exp1 bernilai false. Jika exp1 bernilai false, operat or t idak akan pernah m engevaluasi exp2 karena hasil operasi operat or akan m enj adi false t anpa m em perhat ikan nilai dari exp2. Sebaliknya, operat or & selalu m engevaluasi kedua nilai dari exp1 dan exp2 sebelum m engem balikan suat u nilai j awaban.

Berikut ini adalah suat u cont oh source code yang m enggunakan logika dan boolean AND,

public class TestAND {

public static void main( String[] args ){

int i = 0; int j = 10; boolean test= false;

//demonstrasi &&

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

System.out.println(j); System.out.println(test);

//demonstrasi &

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

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

(25)

Pengenalan Pem rogram an I 25 The out put of t he program is,

0 10 false 0 11 false

(26)

Pengenalan Pem rogram an I 26

4 .1 0 .4 .2 | | ( logik a OR) da n | ( boole a n logik a inclusiv e OR)

Berikut ini adalah t abel kebenaran unt uk | | dan | ,

x 1 x 2 H a sil

TRUE TRUE TRUE

TRUE FALSE TRUE

FALSE TRUE TRUE

[image:26.612.183.428.141.233.2]

FALSE FALSE FALSE

Tabel 7: Table Kebenaran unt uk | dan | |

Perbedaan dasar ant ara operat or | | dan | adalah bahwa | | m endukung short -circuit evaluat ions ( at au proses evaluasi sebagian), sem ent ara | t idak. Apa m aksud dari pernyat aan t ersebut ?

diberikan suat u pernyat aan,

exp1 || exp2

| | akan m engevaluasi pernyat aan exp1, dan segera m engem balikan nilai t rue dan m enyat akan bahwa exp1 bernilai t rue. Jika exp1 bernilai t rue, operat or t idak akan pernah m engevaluasi exp2 karena hasil dari operasi operat or akan bernilai t rue t anpa m em perhat ikan nilai dari exp2. Sebaliknya,operat or | selalu m engevaluasi kedua nilai dari exp1 and exp2 sebelum m engem balikan suat u j awaban suat u nilai.

Berikut ini sebuah cont oh source code yang m enggunakan operat or logika dan boolean OR,

public class TestOR {

public static void main( String[] args ){

int i = 0; int j = 10; boolean test= false;

//demonstrasi ||

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

System.out.println(j); System.out.println(test);

//demonstrasi |

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

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

(27)

Pengenalan Pem rogram an I 27 Hasil keluaran dari program ini adalah,

0 10 true 0 11 true

(28)

Pengenalan Pem rogram an I 28

4 .1 0 .4 .3 ^ ( boole a n logik a Ex clusiv e OR )

Berikut ini adalah t abel kebenaran unt uk ^ ,

x 1 x 2 H a sil

TRUE TRUE FALSE

TRUE FALSE TRUE

FALSE TRUE TRUE

[image:28.612.184.430.141.239.2]

FALSE FALSE FALSE

Tabel 8: Tabel kebenaran unt uk ^

Hasil operasi operat or exclusive OR adalah TRUE, j ika dan hanya j ika sat u operand bernilai TRUE dan yang lain bernilai False. Cat at an j ika kedua operand harus selalu dievaluasi unt uk m enjum lahkan hasil dari suat u exclusive OR.

Berikut ini adalah cont oh source code yang m enggunakan operat or logika exclusive OR,

public class TestXOR {

public static void main( String[] args ){

boolean val1 = true; boolean val2 = true;

System.out.println(val1 ^ val2);

val1 = false; val2 = true;

System.out.println(val1 ^ val2);

val1 = false; val2 = false;

System.out.println(val1 ^ val2);

val1 = true; val2 = false;

System.out.println(val1 ^ val2); }

}

Hasil keluaran program t ersebut adalah, false

(29)

Pengenalan Pem rogram an I 29

4 .1 0 .4 .4 ! ( logik a N OT)

Logika NOT digunakan dalam sat u argum en, dim ana argum en t ersebut dapat m enj adi suat u pernyat aan, variabel at au konst ant a. Berikut ini adalah t abel kebenaran unt uk operat or not ! ,

x 1 H a sil

TRUE FALSE

[image:29.612.180.430.164.227.2]

FALSE TRUE

Tabel 9: Tabel Kebenaran unt uk !

Berikut ini adalah cont oh source code yang m enggunakan operat or logika NOT,

public class TestNOT {

public static void main( String[] args ){

boolean val1 = true; boolean val2 = false; System.out.println(!val1); System.out.println(!val2); }

}

Hasil keluaran program adalah sebagai berikut ,

(30)

Pengenalan Pem rogram an I 30

4 .1 0 .5 Ope r a t or Kon disi( ?:)

Operat or kondisi ?: adalah operat or t ernary. Berart i bahwa operat or ini m em bawa t iga argum en yang m em bent uk suat u ekspresi bersyarat . St rukt ur pernyat aan yang m enggunakan operat or kondisi adalah,

exp1?exp2:exp3

Dim ana nilai exp1 adalah suat u pernyat aan boolean yang m em iliki hasil yang salah sat unya harus berupa nilai t rue at au false.

Jika exp1 bernilai t rue, exp2 m erupakan hasil operasi. Jika bernilai false, kem udian exp3 m erupakan hasil operasinya.

Sebagai cont oh, diberikan code sebagai berikut ,

public class ConditionalOperator {

public static void main( String[] args ){

String status = ""; int grade = 80;

//mendapatkan status pelajar

status = (grade >= 60)?"Passed":"Fail";

//print status

System.out.println( status ); }

}

Hasil keluaran dari program ini akan m enj adi,

Passed

(31)

Pengenalan Pem rogram an I 31 Berikut ini adalah program lain yang m enggunakan operat or ?: ,

class ConditionalOperator {

public static void main( String[] args ){

int score = 0; char answer = 'a';

score = (answer == 'a') ? 10 : 0;

System.out.println("Score = " + score ); }

}

Hasil keluaran program adalah,

Score = 10

[image:31.612.157.449.107.307.2]
(32)

Pengenalan Pem rogram an I 32

4 .1 0 .6 Ope r a t or Pr e ce de n ce

Operat or precedence didefinisikan sebagai perint ah yang dilakukan com piler ket ika m elakukan evaluasi t erhadap operat or, unt uk m engaj ukan perint ah dengan hasil yang t idak am bigu/ hasil yag j elas.

Diberikan pernyat aan yang m em bingungkan,

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

Kit a dapat m enuliskan kem bali pernyat aan diat as dan m enam bahkan beberapa t anda kurung t erhadap operat or precedence,

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

Pe t u nj u k Pe n u lisan Progr a m :

Unt uk m enghindari kebingungan dalam evaluasi operasi m at em at ika, buat lah pernyat aan sesederhana m ungkin dan gunakan bant uan t anda kurung.

(33)

Pengenalan Pem rogram an I 33

4 .1 1 La t iha n

4 .1 1 .1 M e n de k la r a sik a n da n m e n ce t a k va r ia be l

Diberikan t abel dibawah ini, deklarasikan variabel yang t erdapat didalam nya dengan t ipe dat a yang sesuai dan berikan nilai inisialisasi. Tam pilkan hasil out put nya yait u nam a variabel dan nilainya.

Nama Variabel

Tipe Data

Nilai Awal

number

integer

10

letter

character

a

result

boolean

true

str

String

hello

Berikut ini m erupakan t am pilan yang diharapkan sebagai hasil eksekusi program ,

Number = 10 letter = a result = true str = hello

4 .1 1 .2 . M e n da pa t k a n n ila i r a t a - r a t a da r i t iga a n gk a

Buat lah program yang m enghasilkan out put nilai rat a-rat a dari t iga angka. Nilai dari m asing-m asing t iga angka t ersebut adalah 10, 20 dan 45. Tam pilan Out put yang diharapkan adalah,

number 1 = 10 number 2 = 20 number 3 = 45 Rata-rata = 25

4 .1 1 .3 . M e n a m pilk a n n ila i t e r be sa r

Diberikan t iga angka, t uliskan program yang m enghasilkan out put angka dengan nilai t erbesar diant ara t iga angka t ersebut . Gunakan operat or kondisi ?: yang t elah kit a pelaj ari sebelum nya (PETUN JUK: Anda akan perlu m enggunakan dua set operat or ?: unt uk m em ecahkan perm asalahan ini) . Sebagai cont oh, diberikan angka 10, 23 dan 5, Program Anda akan m enghasilkan out put ,

number 1 = 10 number 2 = 23 number 3 = 5

(34)

Pengenalan Pem rogram an I 34

4 .1 1 .4 . Ope r a t or pr e ce de n ce

Diberikan pernyat aan berikut ini, t ulis kem bali soal t ersebut dengan m enam bahkan t anda kurung pada urut an sesuai dengan bagaim ana pernyat aan t ersebut akan dievaluasi.

Gambar

Tabel 1:  Tipe-tipe integral dan range-nya
Tabel 3:  Operator Aritmatika dan fungsi-fungsinya
Tabel  4:  operator Increment dan Decrement
Table 5:  Operator Relasi
+6

Referensi

Dokumen terkait

Gambar 7 merupakan gambar diagram konstelasi dari MISO-OFDM kondisi user bergerak dengan kecepatan 120km/jam Pada sistem tanpa SIC, posisi simbol masih terlihat tidak sesuai

Menurut PIC ESAP, seiring berjalannya waktu pada program ESAP, timbul berbagai permasalahan seperti peningkatan kemampuan dari para peserta berkemampuan lebih tinggi dan

[r]

[r]

mengalami kerusakan atau mempunyai perubahan-peruabahan kimiawi sehingga tidak dapat dipergunakan, maka kerugian perusahaan akan menjadi semakin besar dengan semakin besarnya

Berdasarkan hasil penelitian diketahui bahwa kendala utama dalam penerapan manajemen material di Kabupaten Sumba Tengah adalah letak geografis yang mengharuskan

Seperti ditunjukkan dari semua data hasil prediksi dengan model kinetik memberikan prediksi akurat, meskipun ada beberapa titik data di mana hasil prediksi berbeda

A mother of seven who trafficked her 13 year old daughter and al- lowed her sons aged 7 and 10 years to labor in fisheries in- stead of attending school is now an anti-child