Java - Temel Operatörler

Java, değişkenleri işlemek için zengin bir operatör kümesi sağlar. Tüm Java operatörlerini aşağıdaki gruplara ayırabiliriz -

  • Aritmetik operatörler
  • İlişkisel Operatörler
  • Bitsel Operatörler
  • Mantıksal operatörler
  • Atama Operatörleri
  • Çeşitli Operatörler

Aritmetik Operatörler

Aritmetik operatörler, matematiksel ifadelerde, cebirde kullanıldığı gibi kullanılır. Aşağıdaki tablo aritmetik operatörleri listeler -

Tamsayı değişken A'nın 10, B değişkeninin 20, o zaman -

Örnekleri Göster

Şebeke Açıklama Misal
+ (Toplama) İşlecin her iki tarafına da değerler ekler. A + B 30 verecek
- (Çıkarma) Sağ el işleneni sol el işlenenden çıkarır. A - B -10 verecek
* (Çarpma işlemi) İşlecin her iki tarafındaki değerleri çarpar. A * B 200 verecek
/ (Bölünme) Sol el işleneni sağ el işlenene göre böler. B / A 2 verecek
% (Modül) Sol el işleneni sağ el işlenene böler ve kalanını döndürür. B% A 0 verir
++ (Artış) Operand değerini 1 artırır. B ++ 21 verir
- (Azaltma) İşlenen değerini 1 azaltır. B-- 19 verir

İlişkisel Operatörler

Java dili tarafından desteklenen aşağıdaki ilişkisel operatörler vardır.

A değişkeninin 10, B değişkeninin 20 olduğunu varsayalım, o zaman -

Örnekleri Göster

Şebeke Açıklama Misal
== (eşittir) İki işlenenin değerlerinin eşit olup olmadığını kontrol eder, evet ise koşul doğru olur. (A == B) doğru değil.
! = (eşit değildir) İki işlenenin değerlerinin eşit olup olmadığını kontrol eder, değerler eşit değilse koşul doğru olur. (A! = B) doğrudur.
> (büyüktür) Soldaki işlenenin değerinin sağ işlenenin değerinden büyük olup olmadığını kontrol eder, evet ise koşul doğru olur. (A> B) doğru değil.
<(küçüktür) Soldaki işlenenin değerinin sağ işlenenin değerinden küçük olup olmadığını kontrol eder, evet ise koşul doğru olur. (A <B) doğrudur.
> = (büyük veya eşit) Sol işlenenin değerinin sağ işlenenin değerinden büyük veya ona eşit olup olmadığını kontrol eder, evet ise koşul doğru olur. (A> = B) doğru değil.
<= (küçüktür veya eşittir) Sol işlenenin değerinin sağ işlenenin değerinden küçük veya ona eşit olup olmadığını kontrol eder, evet ise koşul doğru olur. (A <= B) doğrudur.

Bitsel Operatörler

Java, tam sayı türlerine, long, int, short, char ve byte'a uygulanabilen birkaç bitsel işleç tanımlar.

Bitsel operatör, bitler üzerinde çalışır ve bit bit işlem gerçekleştirir. A = 60 ve b = 13 olduğunu varsayalım; şimdi ikili biçimde aşağıdaki gibi olacaklar -

a = 0011 1100

b = 0000 1101

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

a & b = 0000 1100

a | b = 0011 1101

a ^ b = 0011 0001

~ a = 1100 0011

Aşağıdaki tablo bitsel operatörleri listeler -

Tamsayı değişken A'nın 60, B değişkeninin 13 olduğunu varsayalım -

Örnekleri Göster

Şebeke Açıklama Misal
& (bitsel ve) İkili AND İşleci, her iki işlenende de varsa sonuca bir bit kopyalar. (A & B) 0000 1100 olan 12 verecek
| (bitsel veya) İkili VEYA İşleci, işlenenlerden herhangi birinde varsa bir bit kopyalar. (A | B) 0011 1101 olan 61 verir
^ (bitsel ÖZELVEYA) İkili XOR İşleci, bir işlenen içinde ayarlanmışsa, ancak her ikisinde birden ayarlanmamışsa biti kopyalar. (A ^ B), 0011 0001 olan 49 verecek
~ (bitsel iltifat) İkili Birler Tamamlayıcı Operatörü tekli ve bitleri 'çevirme' etkisine sahiptir. (~ A) işaretli bir ikili sayı nedeniyle 2'nin tamamlayıcı formunda 1100 0011 olan -61 verecektir.
<< (sola kaydırma) İkili Sol Kaydırma Operatörü. Soldaki işlenenler değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sola taşınır. Bir << 2, 1111 0000 olan 240'ı verir.
>> (sağa kaydırma) İkili Sağ Shift Operatörü. Soldaki işlenenler değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sağa taşınır. A >> 2, 1111 olan 15 verir
>>> (sıfır dolgulu sağa kaydırma) Sıfır doldurma operatörünü sağa kaydır. Soldaki işlenenler değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sağa taşınır ve kaydırılan değerler sıfırlarla doldurulur. A >>> 2, 0000 1111 olan 15 verir

Mantıksal Operatörler

Aşağıdaki tablo mantıksal operatörleri listeler -

Boolean değişkenleri A'nın doğru ve B değişkeninin yanlış olduğunu varsayalım, o zaman -

Örnekleri Göster

Şebeke Açıklama Misal
&& (mantıksal ve) Mantıksal AND operatörü çağrıldı. Her iki işlenen de sıfır değilse, koşul doğru olur. (A && B) yanlıştır
|| (mantıksal veya) Mantıksal VEYA Operatörü çağrıldı. İki işlenenden herhangi biri sıfır değilse, koşul doğru olur. (A || B) doğru
! (mantıksal değil) Mantıksal NOT Operatörü olarak adlandırıldı. İşlenenin mantıksal durumunu tersine çevirmek için kullanın. Bir koşul doğruysa, Mantıksal NOT operatörü yanlış yapar. ! (A && B) doğru

Atama Operatörleri

Aşağıda, Java dili tarafından desteklenen atama operatörleri verilmiştir -

Örnekleri Göster

Şebeke Açıklama Misal
= Basit atama operatörü. Sağ taraftaki işlenenlerden sol taraf işlenene değer atar. C = A + B, A + B'nin değerini C'ye atar
+ = AND atama operatörü ekleyin. Sol operanda sağ operandı ekler ve sonucu sol operanda atar. C + = A, C = C + A'ya eşdeğerdir
- = Çıkarma VE atama operatörü. Sağ operandı sol operanddan çıkarır ve sonucu sol operanda atar. C - = A, C = C - A'ya eşdeğerdir
* = AND atama operatörünü çarpın. Sağ operandı sol operandla çarpar ve sonucu sol operanda atar. C * = A, C = C * A'ya eşdeğerdir
/ = VE atama işlecini böl. Soldaki operandı sağ operandla böler ve sonucu sol operanda atar. C / = A, C = C / A'ya eşdeğerdir
% = Modül VE atama operatörü. İki işlenen kullanarak modülü alır ve sonucu sol işlenenlere atar. C% = A eşdeğerdir C = C% A
<< = Sol kaydırma VE atama operatörü. C << = 2, C = C << 2 ile aynıdır
>> = Sağ kaydırma VE atama operatörü. C >> = 2, C = C >> 2 ile aynıdır
& = Bitsel AND atama operatörü. C & = 2, C = C & 2 ile aynıdır
^ = bit düzeyinde özel OR ve atama operatörü. C ^ = 2, C = C ^ 2 ile aynıdır
| = bitsel kapsayıcı OR ve atama operatörü. C | = 2, C = C | ile aynıdır | 2

Çeşitli Operatörler

Java Dili tarafından desteklenen birkaç başka operatör vardır.

Koşullu Operatör (?:)

Koşullu operatör, aynı zamanda ternary operator. Bu operatör üç işlenen içerir ve Boole ifadelerini değerlendirmek için kullanılır. Operatörün amacı, değişkene hangi değerin atanması gerektiğine karar vermektir. Operatör şu şekilde yazılır -

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

Aşağıda bir örnek verilmiştir -

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

Bu, aşağıdaki sonucu verecektir -

Output

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

instanceof Operatörü

Bu operatör yalnızca nesne referans değişkenleri için kullanılır. Operatör, nesnenin belirli bir türde (sınıf türü veya arabirim türü) olup olmadığını kontrol eder. instanceof operatörü şu şekilde yazılır -

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

Operatörün sol tarafındaki değişken tarafından belirtilen nesne, sağ taraftaki sınıf / arayüz türü için IS-A kontrolünden geçerse, sonuç doğru olacaktır. Aşağıda bir örnek verilmiştir -

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

Bu, aşağıdaki sonucu verecektir -

Output

true

Karşılaştırılan nesne sağdaki türle uyumlu atama ise bu işleç yine de doğru döndürür. Aşağıda bir örnek daha var -

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

Bu, aşağıdaki sonucu verecektir -

Output

true

Java Operatörlerinin Önceliği

Operatör önceliği, bir ifadedeki terimlerin gruplandırılmasını belirler. Bu, bir ifadenin nasıl değerlendirildiğini etkiler. Bazı operatörler diğerlerinden daha yüksek önceliğe sahiptir; örneğin, çarpma operatörü toplama operatöründen daha yüksek önceliğe sahiptir -

Örneğin, x = 7 + 3 * 2; burada x operatörüne + göre daha yüksek önceliğe sahip olduğu için 20 değil 13 atanır, bu nedenle önce 3 * 2 ile çarpılır ve sonra 7'ye eklenir.

Burada, en yüksek önceliğe sahip operatörler tablonun en üstünde, en düşük olanlar ise en altta görünür. Bir ifade içinde, daha yüksek öncelikli operatörler ilk olarak değerlendirilecektir.

Kategori Şebeke İlişkisellik
Postfix ifade ++ ifade-- Soldan sağa
Birli ++ ifade –- ifade + ifade –ifade ~! Sağdan sola
Çarpımsal * /% Soldan sağa
Katkı + - Soldan sağa
Vardiya << >> >>> Soldan sağa
İlişkisel <> <=> = örnek Soldan sağa
Eşitlik ==! = Soldan sağa
Bitsel AND & Soldan sağa
Bitsel ÖZELVEYA ^ Soldan sağa
Bit tabanlı VEYA | Soldan sağa
Mantıksal AND && Soldan sağa
Mantıksal VEYA || Soldan sağa
Koşullu ?: Sağdan sola
Görev = + = - = * = / =% = ^ = | = << = >> = >>> = Sağdan sola

Sırada ne var?

Sonraki bölüm Java programlamada döngü kontrolü hakkında bilgi verecektir. Bölüm, çeşitli döngü türlerini ve bu döngülerin Java programı geliştirmede nasıl kullanılabileceğini ve hangi amaçlarla kullanıldıklarını açıklayacaktır.