Java - Operator Dasar

Java menyediakan sekumpulan operator yang kaya untuk memanipulasi variabel. Kami dapat membagi semua operator Java ke dalam grup berikut -

  • Operator Aritmatika
  • Operator Relasional
  • Operator Bitwise
  • Operator Logis
  • Operator Penugasan
  • Operator Misc

Operator Aritmatika

Operator aritmatika digunakan dalam ekspresi matematika dengan cara yang sama seperti yang digunakan dalam aljabar. Tabel berikut mencantumkan operator aritmatika -

Asumsikan variabel integer A menampung 10 dan variabel B menampung 20, lalu -

Tunjukkan Contoh

Operator Deskripsi Contoh
+ (Penambahan) Menambahkan nilai di kedua sisi operator. A + B akan menghasilkan 30
- (Pengurangan) Mengurangi operan kanan dari operan kiri. A - B akan memberi -10
* (Perkalian) Mengalikan nilai di kedua sisi operator. A * B akan memberi 200
/ (Divisi) Membagi operan kiri dengan operan kanan. B / A akan memberi 2
% (Modulus) Membagi operan kiri dengan operan kanan dan mengembalikan sisanya. B% A akan memberi 0
++ (Kenaikan) Meningkatkan nilai operan sebanyak 1. B ++ menghasilkan 21
- (Penurunan) Menurunkan nilai operan sebesar 1. B-- memberi 19

Operator Relasional

Ada operator relasional berikut yang didukung oleh bahasa Java.

Asumsikan variabel A memiliki 10 dan variabel B memiliki 20, maka -

Tunjukkan Contoh

Operator Deskripsi Contoh
== (sama dengan) Memeriksa apakah nilai dari dua operan sama atau tidak, jika ya maka kondisinya menjadi benar. (A == B) tidak benar.
! = (tidak sama dengan) Memeriksa apakah nilai dari dua operan sama atau tidak, jika nilai tidak sama maka kondisi menjadi benar. (A! = B) benar.
> (lebih dari) Memeriksa apakah nilai operan kiri lebih besar dari nilai operan kanan, jika ya maka kondisi menjadi benar. (A> B) tidak benar.
<(kurang dari) Memeriksa apakah nilai operan kiri kurang dari nilai operan kanan, jika ya maka kondisinya menjadi benar. (A <B) benar.
> = (lebih besar dari atau sama dengan) Memeriksa apakah nilai operan kiri lebih besar dari atau sama dengan nilai operan kanan, jika ya maka kondisi menjadi benar. (A> = B) tidak benar.
<= (kurang dari atau sama dengan) Memeriksa apakah nilai operan kiri kurang dari atau sama dengan nilai operan kanan, jika ya maka kondisi menjadi benar. (A <= B) benar.

Operator Bitwise

Java mendefinisikan beberapa operator bitwise, yang dapat diterapkan pada tipe integer, long, int, short, char, dan byte.

Operator bitwise bekerja pada bit dan melakukan operasi bit demi bit. Asumsikan jika a = 60 dan b = 13; sekarang dalam format biner akan menjadi sebagai berikut -

a = 0011 1100

b = 0000 1101

-----------------

a & b = 0000 1100

a | b = 0011 1101

a ^ b = 0011 0001

~ a = 1100 0011

Tabel berikut mencantumkan operator bitwise -

Asumsikan variabel integer A memegang 60 dan variabel B memegang 13 lalu -

Tunjukkan Contoh

Operator Deskripsi Contoh
& (bitwise dan) Biner AND Operator menyalin sedikit ke hasil jika ada di kedua operan. (A & B) akan memberikan 12 yaitu 0000 1100
| (bitwise atau) Biner ATAU Operator menyalin sedikit jika ada di salah satu operan. (A | B) akan menghasilkan 61 yaitu 0011 1101
^ (XOR bitwise) Operator Biner XOR menyalin bit jika diatur dalam satu operan tetapi tidak keduanya. (A ^ B) akan menghasilkan 49 yaitu 0011 0001
~ (pujian bitwise) Operator Pelengkap Binary Ones adalah unary dan memiliki efek bit 'membalik'. (~ A) akan memberikan -61 yaitu 1100 0011 dalam bentuk komplemen 2 karena bilangan biner bertanda.
<< (shift kiri) Operator Binary Left Shift. Nilai operan kiri dipindahkan ke kiri dengan jumlah bit yang ditentukan oleh operan kanan. A << 2 akan menghasilkan 240 yaitu 1111 0000
>> (shift kanan) Operator Pergeseran Kanan Biner. Nilai operan kiri dipindahkan ke kanan dengan jumlah bit yang ditentukan oleh operan kanan. A >> 2 akan menghasilkan 15 yaitu 1111
>>> (nol mengisi shift kanan) Geser operator pengisian nol ke kanan. Nilai operan kiri dipindahkan ke kanan dengan jumlah bit yang ditentukan oleh operan kanan dan nilai yang digeser diisi dengan nol. A >>> 2 akan menghasilkan 15 yaitu 0000 1111

Operator Logis

Tabel berikut mencantumkan operator logika -

Asumsikan variabel Boolean A bernilai true dan variabel B bernilai false, lalu -

Tunjukkan Contoh

Operator Deskripsi Contoh
&& (logis dan) Disebut Logical AND operator. Jika kedua operan bukan nol, maka kondisinya menjadi benar. (A && B) salah
|| (logis atau) Disebut Logical OR Operator. Jika salah satu dari dua operan bukan nol, maka kondisinya menjadi benar. (A || B) itu benar
! (tidak logis) Disebut Logical NOT Operator. Gunakan untuk membalikkan keadaan logis operannya. Jika kondisi benar maka operator NOT akan membuat salah. ! (A && B) benar

Operator Penugasan

Berikut adalah operator tugas yang didukung oleh bahasa Java -

Tunjukkan Contoh

Operator Deskripsi Contoh
= Operator tugas sederhana. Menetapkan nilai dari operan sisi kanan ke operan sisi kiri. C = A + B akan memberikan nilai A + B ke dalam C
+ = Tambahkan DAN operator penugasan. Ini menambahkan operan kanan ke operan kiri dan menetapkan hasilnya ke operan kiri. C + = A ekivalen dengan C = C + A
- = Kurangi DAN operator penugasan. Ini mengurangi operan kanan dari operan kiri dan menetapkan hasilnya ke operan kiri. C - = A ekivalen dengan C = C - A
* = Kalikan DAN operator penugasan. Ini mengalikan operan kanan dengan operan kiri dan menetapkan hasilnya ke operan kiri. C * = A setara dengan C = C * A
/ = Bagi DAN operator penugasan. Ini membagi operan kiri dengan operan kanan dan menetapkan hasilnya ke operan kiri. C / = A ekivalen dengan C = C / A
% = Modulus DAN operator penugasan. Dibutuhkan modulus menggunakan dua operan dan menetapkan hasilnya ke operan kiri. C% = A setara dengan C = C% A
<< = Pergeseran kiri DAN operator penugasan. C << = 2 sama dengan C = C << 2
>> = Shift kanan DAN operator penugasan. C >> = 2 sama dengan C = C >> 2
& = Bitwise AND operator penugasan. C & = 2 sama dengan C = C & 2
^ = bitwise eksklusif OR dan operator penugasan. C ^ = 2 sama dengan C = C ^ 2
| = bitwise inklusif OR dan operator penugasan. C | = 2 sama dengan C = C | 2

Operator Miscellaneous

Ada beberapa operator lain yang didukung oleh Bahasa Java.

Operator Bersyarat (? :)

Operator bersyarat juga dikenal sebagai ternary operator. Operator ini terdiri dari tiga operan dan digunakan untuk mengevaluasi ekspresi Boolean. Tujuan operator adalah untuk memutuskan, nilai mana yang harus diberikan ke variabel. Operator ditulis sebagai -

variable x = (expression) ? value if true : value if false

Berikut adalah contohnya -

Example

public class Test {

   public static void main(String args[]) {
      int a, b;
      a = 10;
      b = (a == 1) ? 20: 30;
      System.out.println( "Value of b is : " +  b );

      b = (a == 10) ? 20: 30;
      System.out.println( "Value of b is : " + b );
   }
}

Ini akan menghasilkan hasil sebagai berikut -

Output

Value of b is : 30
Value of b is : 20

instansi Operator

Operator ini hanya digunakan untuk variabel referensi objek. Operator memeriksa apakah objek dari tipe tertentu (tipe kelas atau tipe antarmuka). operator instanceof ditulis sebagai -

( Object reference variable ) instanceof  (class/interface type)

Jika objek yang dirujuk oleh variabel di sisi kiri operator melewati pemeriksaan IS-A untuk tipe kelas / antarmuka di sisi kanan, maka hasilnya akan benar. Berikut adalah contohnya -

Example

public class Test {

   public static void main(String args[]) {

      String name = "James";

      // following will return true since name is type of String
      boolean result = name instanceof String;
      System.out.println( result );
   }
}

Ini akan menghasilkan hasil sebagai berikut -

Output

true

Operator ini akan tetap mengembalikan true, jika objek yang dibandingkan adalah tugas yang kompatibel dengan tipe di sebelah kanan. Berikut adalah satu contoh lagi -

Example

class Vehicle {}

public class Car extends Vehicle {

   public static void main(String args[]) {

      Vehicle a = new Car();
      boolean result =  a instanceof Car;
      System.out.println( result );
   }
}

Ini akan menghasilkan hasil sebagai berikut -

Output

true

Diutamakan Operator Java

Prioritas operator menentukan pengelompokan istilah dalam ekspresi. Ini memengaruhi bagaimana ekspresi dievaluasi. Operator tertentu memiliki prioritas yang lebih tinggi dari yang lain; misalnya, operator perkalian memiliki prioritas yang lebih tinggi daripada operator penjumlahan -

Misalnya, x = 7 + 3 * 2; di sini x ditetapkan 13, bukan 20 karena operator * memiliki prioritas lebih tinggi dari +, jadi pertama-tama dikalikan dengan 3 * 2 dan kemudian dijumlahkan menjadi 7.

Di sini, operator dengan prioritas tertinggi muncul di bagian atas tabel, operator dengan prioritas terendah muncul di bagian bawah. Dalam ekspresi, operator dengan prioritas lebih tinggi akan dievaluasi terlebih dahulu.

Kategori Operator Asosiatif
Postfix ekspresi ++ ekspresi-- Kiri ke kanan
Unary ++ ekspresi –-ekspresi + ekspresi –ekspresi ~! Kanan ke kiri
Perkalian * /% Kiri ke kanan
Aditif + - Kiri ke kanan
Bergeser << >> >>> Kiri ke kanan
Relasional <> <=> = turunan Kiri ke kanan
Persamaan ==! = Kiri ke kanan
Bitwise DAN & Kiri ke kanan
Bitwise XOR ^ Kiri ke kanan
Bitwise ATAU | Kiri ke kanan
DAN logis && Kiri ke kanan
Logis ATAU || Kiri ke kanan
Bersyarat ?: Kanan ke kiri
Tugas = + = - = * = / =% = ^ = | = << = >> = >>> = Kanan ke kiri

Apa selanjutnya?

Bab selanjutnya akan menjelaskan tentang kontrol loop dalam pemrograman Java. Bab ini akan menjelaskan berbagai jenis loop dan bagaimana loop ini dapat digunakan dalam pengembangan program Java dan untuk tujuan penggunaan apa loop tersebut.