1 OPERATOR DAN EKSPRESI EKSPRESI Ekspresi atau ungkapan adalah suatu bentuk yang menghasilkan suatu nilai . Dalam bentuk sederhana, ekspresi berupa sebuah literal atau variabel. dalam bentuk yang lebih kompleks, suau ekspresi melibatkan operator dan operand, misal : 1 + 2 merupakan suatu ekpresi yang menghasilkan nilai 3. Dalam hal ini 1 dan 2 bertindak sebagai operand dan + berperan sebagai operator. OPERATOR Operator adalah simbol atau karakterkhusus (misal + dan *) yang digunakan dalam suatu ekspresi untuk menghasilkan suatu nilai. Java menyediakan sejumlah kelompok operator, meliputi : operator aritmatika operator penambahan dan pengurangan operator penugasan operator pembandingan operator logika operator bit Menurut jumlah operand yang dilibatkan, operator diklasifikasikan menjadi : operator unary, yaitu operator yang hanya melibatkan satu operand, misalnya -4 operator binary, yaitu operator yang hanya melibatkan dua buah operand, misalnya 1+2 operator tertiary, yaitu operator yang hanya melibatkan tiga buah operand, misalnya a?b:c 1. Operator Aritmatika Operator ini digunakan untuk melakukan perhitungan aritmatika yang berlaku untuk bilangan bulat maupun titik mengambang OPERATOR KETERANGAN Penjumlahan + Tanda Plus – Pengurangan Tanda Minus Perkalian * Pembagian / Sisa pembagian % Operator *, / dan % mempunyai prioritas yang sama tetapi lebih tinggi daripada + atau – yang berkedudukan sebagai operator binary. Contoh : //berkas : aritmatika.java public class aritmatika { public static void main (String[] args) { System.out.println("1 + 2 * 3 = "+ (1+2*3)); System.out.println("13 / 5 = "+ (13/5)); System.out.println("13 / 5.2 = "+ (13/5.2)); System.out.println("13 % 5 = "+ (13%5)); } } Pemrograman JAVA 2 Hasil : 1 + 2 * 3 = 7 13 / 5 = 2 13 / 5.2 = 2.5 13 % 5 = 3 2. Operator Penambahan dan Pengurangan Pada Java, Anda dapat memberikan pernyataan sebagai berikut : x = x+1; yang berarti isi variabel x dinaikkan sebesar 1 y = y – 1; yang berarti isi variabel y berkurang sebesar 1 Operasi di atas seringkali dilaksanakan dengan menggunakan operator ++ atau --, misalnya : y = x++; y = y--; Operator ++ dan – dapat dikenakan pada bilangan bulat maupun bilangan real. NILAI SEMULA PERNYATAAN HASIL Y HASIL X 5 Y = X++; 5 6 5 Y = ++X; 6 6 5 Y = X--; 5 4 5 Y = --X 4 4 Contoh : //berkas : penambahan.java public class penambahan { public static void main (String[] args) { int x, y; x = 5; System.out.println("Nilai awal x = "+ x); y = 8 - x++; System.out.println("Operasi y = 8 - x++ akan menghasilkan nilai x = " + x +" dan y= "+ y); x = 5; System.out.println("Nilai awal x = "+ x); y = 8 - ++x; System.out.println("Operasi y = 8 - ++x akan menghasilkan nilai x = " + x +" dan y= "+ y); x = 5; System.out.println("Nilai awal x = "+ x); y = 8 - x--; System.out.println("Operasi y = 8 - x-- akan menghasilkan nilai x = " + x +" dan y= "+ y); x = 5; System.out.println("Nilai awal x = "+ x); y = 8 - --x; System.out.println("Operasi y = 8 - --x akan menghasilkan nilai x = " + x +" dan y= "+ y); } } Pemrograman JAVA 3 Hasil : Nilai awal x = 5 Operasi y = 8 - x++ akan menghasilkan nilai x = 6 dan y= 3 Nilai awal x = 5 Operasi y = 8 - ++x akan menghasilkan nilai x = 6 dan y= 2 Nilai awal x = 5 Operasi y = 8 - x-- akan menghasilkan nilai x = 4 dan y= 3 Nilai awal x = 5 Operasi y = 8 - --x akan menghasilkan nilai x = 4 dan y= 4 3. Operator Penggabungan Pada Java, operator + dapat juga dikenakan pada string. Gunanya adalah untuk menggabungkan dua buah string menjadi sebuah string baru. Misal : “Selamat Belajar” + “ Java” akan menghasilkan “Selamat Belajar Java” "Bilangan :" +8 akan menghasilan "Bilangan :8" Contoh : //berkas : string.java public class string { public static void main (String[] args) { System.out.println("Selamat Belajar"+ " Java"); System.out.println("Bilangan : "+ 8); } } Hasil : Selamat Belajar Java Bilangan : 8 4. Operator Bit Java mendukung 7 buah operator yang beroperasi pada level bit (0 dan 1) yaitu : & (DAN untuk biner) | (ATAU untuk biner) ^ (ATAU EKSKLUSIF) ~ (NOT untuk biner) << (geser kiri) >> (geser kanan) >>> (geser kanan tak bertanda) Contoh : //berkas : bit.java public class bit { public static void main (String[] args) { System.out.println("Hasil dari 9 & 10 = "+ (9&10)); System.out.println("Hasil dari 9 | 10 = "+ (9|10)); System.out.println("Hasil dari ~10 = "+ (~10)); System.out.println("Hasil dari 29 << 1 = "+ (29<<1)); System.out.println("Hasil dari 29 >> 1 = "+ (29>>1)); System.out.println("Hasil dari 29 >>> 1 = "+ (29>>>1)); } } Pemrograman JAVA 4 Hasil : Hasil dari 9 & 10 = 8 Hasil dari 9 | 10 = 11 Hasil dari ~10 = -11 Hasil dari 29 << 1 = 58 Hasil dari 29 >> 1 = 14 Hasil dari 29 >>> 1 = 14 5. Operator Penugasan Berguna untuk memberikan nilai ke suatu variabel OPERATOR KETERANGAN Pemberian nilai = Penambahan bilangan += Penguranganbilangan -= Pengalian bilangan *= Pembagian bilangan /= Pemerolehan sisa bagi %= Y &= X identik dengan Y=Y&X &= Y ^= X identik dengan Y=Y^X ^= Y |= X identik dengan Y=Y|X |= Y <<= X identik dengan Y=Y<<X <<= Y >>= X identik dengan Y=Y>>X >>= Y >>>= X identik dengan Y=Y>>>X >>>= Contoh : //berkas : penugasan.java public class penugasan { public static void main (String[] args) { float a=5f; System.out.println("Nilai a=5"); System.out.println("Nilai a +=2 adalah "+ (a+=2)); a=5f; System.out.println("Nilai a -=2 adalah "+ (a-=2)); a=5f; System.out.println("Nilai a /=2 adalah "+ (a/=2)); a=5f; System.out.println("Nilai a *=2 adalah "+ (a*=2)); a=5f; System.out.println("Nilai a %=2 adalah "+ (a%=2)); } } Hasil : Nilai a=5 Nilai a +=2 adalah 7.0 Nilai a -=2 adalah 3.0 Nilai a /=2 adalah 2.5 Nilai a *=2 adalah 10.0 Nilai a %=2 adalah 1.0 Operator dalam suatu ekspresi memiliki prioritas pekerjaan yang berbeda-beda. Itulah sebabnya jika terdapat ekspresi yang melibatkan sejumlah operator, pekerjaannya ditentukan oleh prioritas masing-masing. Pemrograman JAVA 5 PRIORITAS Tertinggi Terendah OPERATOR . [] () ++ -- ! ~ instanceof new (type) ekspresi - (tanda negatif) + (tanda positif) ~ ! * / % + << >> >>> -e -r < <= > >= == != & ^ | && || ?: = += -= *= /= %= ^= &= |= <<= >>= >>>= PENGARAH TIPE (TYPE-CASTING) Adakalanya diperlukan langkah untuk mengubah suatu tipe data menjadi tipe data lain. Proses untuk mengubah suatu tipe ke tipe yang lain. Bentuk penulisan : (tipe_data) data Misal : int i = 65; char huruf; huruf = char(i); Agar tidak ada nilai yang hilang, tipe tujuan harus memiliki ukuran yang lebih besar atau paling tidak sama dengan ukuran tipe sumber. TIPE SUMBER TIPE TUJUAN short, char, int, long, float, double byte int, long, float, double short int, long, float, double char long, float, double int long, double long double float Contoh : //berkas : tipecast.java public class tipecast { public static void main (String[] args) { int awal=28; double akhir; akhir = (double) awal; System.out.println("Nilai Awal = "+ awal); System.out.println("Nilai Sesudah Konversi = "+ akhir); } } Pemrograman JAVA 6 Hasil : Nilai Awal = 28 Nilai Sesudah Konversi = 28.0 TUGAS 1. Buatlah program untuk menghitung : Keliling, Luas Permukaan dan Isi dari sebuah bola dengan rumus : Keliling = 2 r Luas Permukaan = 4/3 r3 Isi = 4 r2 Jika diketahui nilai r = 314 ! 2. Buat program untuk mencari hasil operasi bilangan : 25 (10) + 25 (10) = … (8) 2 (10) x 5 (10) = …(16) 81 (10) / 9 (10) = …(8) 3. Perusahaan telepon di kota XYZ mempunyai tarif Rp. 250,- per pulsa. Setiap langganan dikenakan biaya langganan sebesar Rp. 20.000,- per bulan. Buatlah program untuk menghitung tagihan langganan dengan menggunakan konstanta dengan keluaran sebagai berikut : Nomor Pelanggan : 001 Nama Pelanggan : Aditya Ramadhan Bulan Tagihan : April Banyaknya Pulsa Pemakaian : 110 Jumlah Tagihan Bulan April adalah sebesar Rp. 47500.0 Pemrograman JAVA