Java’da Operatörler
Herkese merhabalar arkadaşlar,
Bugün ki yazımızda operatörleri inceleyeceğiz. Javada operatörler konusunu detaylandıracağız. Vakit kaybetmeden yazımıza geçelim.
Operatörler Java’da istenen sonucu elde etmek için kullanılır. Temel olarak 5 ana başlık altında toplayabiliriz. Bunlar:
Atama operatörleri (sınırlı: =, +=, -=)
Aritmetik operatörler (sınırlı: +, -, *, /, %, ++, — ) ,
İlişki operatörleri ( bunlarla sınırlıdır: <, <=, >, >=, ==, !=),
Mantıksal operatörler (sınırlı: &, |, ^, !, &&, ||)
Koşul operatörü (? :)
olarak belirtilir.
Dipnot: + operatörü, iki sayısal temel öğeyi birbirine eklemek veya işlenenlerden herhangi biri bir String ise bir birleştirme işlemi gerçekleştirmek için kullanılabilir.
Atama Operatörleri
Atama operatörleri bir değişkene ilk değeri atarken kullanılır. Bu değişken üzerinde atama yapıldıktan sonra bileşik operatörler (+=, -=) ile farklı işlemler uygulanabilir.
= operatörü bir nesne değildir. Fakat nesneye ulaşmada kullanılan bir işarettir.(işaretçi değildir!)
Aslında yaklaşık 11 bileşik atama operatörü vardır, ancak yalnızca en yaygın olarak kullanılan dördü (+=, -=, *= ve /=)
y = y — 6;
x = x + 2 * 5;
Şimdi, bileşik operatörlerle:
y -= 6;
x += 2 * 5;
Son iki atama, ilk ikisi ile aynı sonucu verir.
Önemli Not: x *= 2 + 5; ifadesine baktığımız zaman
x = ( x * 2 ) + 5; ifadesi yanlış kullanım olacaktır.
*= operatöründe yer alan çarpı işareti sağ taraftaki tüm değerleri kapsayacağından
x = x * (2 + 5) ifadesi doğru kullanım olacaktır.
İlişki Operatörleri
Altı adet ilişki operatörü vardır ve çalıştırıldıkları zaman boolean(true ya da false) bir değer döndürürler.
< küçüktür
> büyüktür
<= küçüktür veya eşittir
>= büyüktür veya eşittir.
Eşitlik operatörleri ise ==(eşittir) ve !=(eşit değildir) şeklinde ifade edilir.
char ‘a’ == ‘a’? true döndürür. Sonuç doğrudur değerler eşittir
char ‘a’ == ‘b’? false döndürür. A b’ye eşit değildir.
char ‘a’ != ‘b’ ? true döndürür. A b’ye eşit değildir ifadesi doğrudur. Bu kısım önemlidir.
class testDeneme {
public static void main(String [] args) {
boolean b = 100 > 99;
System.out.println(b);
}
} // Kod çalıştırıldığı zaman sonuç true olarak dönecektir.
instanceof operatörü
instanceof operatörü yalnızca nesne referans değişkenleri için kullanılır ve bunu bir nesnenin belirli bir türde olup olmadığını kontrol etmek için kullanabilirsiniz. Örnek verecek olursak
public static void main(String[] args) {
String s = new String(“deneme”);
if (s instanceof String) {
System.out.print(“s bir String türündedir”);
}}
Yukarıdaki kod çalıştırılırsa ekrana “s bir String türündedir” yazar. Çünkü if kalıbının içindeki instanceof deyiminde s’nin String olup olmadığı koşulunu söylüyor.
Aritmetik operatörler
int x = 5 * 3; // x burada 15 değerini almaktadır
int y = x — 4; // y burada 15–4= 11 değerini almaktadır.
System.out.println(y); // y= 11 değerini ekrana yazdırır.
Aritmetik operatörlerden / (bölme) işlemi iki sayı arasında bölme işlemi yapar ama bölümü verir. Kalanlı bölme işlemlerinde kalanı vermez. Kalanı bulabilmek için % işaretini kullanırız.
% işareti bir nevi mod almaktır.
int x = 8 / 5; // x burada 1 değerini almaktadır
int y = 8 % 5; // y burada 3 değerini almaktadır.
System.out.println(y); // y= 3 değerini ekrana yazdırır.
+ operatörü String değişkenleri birbirine bağlar.
String hayvan = “Pembe “ + “Fil”;
String a = “String”;
int b = 3;
int c = 7;
System.out.println(a + b + c); // çıktısı String37 olmalıdır
Artırma ve Azaltma operatörleri(++ ve — )
Değişkenleri bir artıran veya bir azaltan operatörlerdir. Kullanımına dikkat edilmelidir.
class Deneme {
static int deger = 0;
public static void main (String [] args) {
System.out.println(“sayinin degeri: “ + deger++); // burada ekrana 0 yazar.Çünkü ilk önce derleyici değişkeni alır. Ardından değerini bir artırarak devam eder.
System.out.println(“sayinin 2.degeri “ + deger); // Burada derleyici kodu derlemeye devam eder.En son değer=1 olmustu. O yüzden burada değer ifadesini 1 yazar.
System.out.println(“sayinin şimdiki değeri “ + ++degeri); // Bu kısımda ise önce değeri 1 artırmış. Sonrasında bu değer ifadesini kullanmış. Yani burada değer=2 olarak işleme koyulmuş. Ekrana 2 yazar
}}
Koşul operatörü
Koşullu operatör üçlü bir operatördür (üç işleneni vardır) ve boolean ifadelerini değerlendirmek için kullanılır, bir if ifadesine çok benzer, ancak test doğruysa bir kod bloğu yürütmek yerine koşullu bir operatör bir değişkene bir değer atar . Başka bir deyişle, koşullu operatörün amacı, bir değişkene iki değerden hangisinin atanacağına karar vermektir.
int sayi = 3;
String durum = (sayi<4) ? “sayi 4 ten küçüktür” : “sayi 4 ten büyüktür.”;
Yukarıdaki kod bloğu çalıştırıldığında ilk ifade çalışır. Yani soru işaretinden sonra gelen ilk ifade koşulu sağladığı için çalışır.
Mantıksal Operatörler
&& AND operatörü
|| OR operatörü
&& operatörü ile iki veya kaç adet belirtiliyorsa o kadar şartın hepsinin sağlanması gerekir. || veya operatörü ile kaç koşul belirlenirse belirlensin bir tane koşul uyuyorsa o kod bloğu çalışır.
public static void main(String[] args) {
int a=8;
if ((a == 5) || (a != 7)) {
System.out.println(“hayat çok güzel 😊”);
}
if ((a == 4)) && (a != 8))) {
System.out.println(“Hayat neden berbat!”);
}
Yukarıdaki kod bloğu çalıştırıldığı zaman size sonuç olarak “Hayat çok güzel 😊” dönecektir. Çünkü bir koşulun sağlaması yeterlidir. a != 7 ifadesi true ifadedir. a 7 değil 8 dir. Bu yüzden bu koşul sağlanmış olur.
^ exclusive-OR (XOR) operatörüdür.
^ (exclusive-OR) operatörü yalnızca boole değerlerini değerlendirir. ^ operatörü, bir ifadede her zaman hem sol hem de sağ işlenenleri değerlendirir. Özel VEYA (^) ifadesinin doğru olması için, TAM OLARAK bir işlenen doğru olmalıdır.
System.out.println(“xor “ + ((2❤) ^ (4>3))); // burada tam olarak şartı sağlamadığı için “xor false” yazar.
! ise değilini yani tersini alan operatördür.
if(!(7 == 5)) // 7 5’e eşit değildir.Bu ifade falsedir. Fakat değilini aldığımızda bu ifade true ya döner. if(true) son halini alır.
Bu yazımızda Java’da operatörler konusunu incelemeye çalıştık. Operatörler konusu özellikle sınavlarda sıkça karşılaşılan bir konudur. Basit gibi görünse de dikkat edilecek noktalar vardır. Bizler de bunu belirtmeye çalıştık. Bizi ve yazılarımızı internet sitemizden de takip edebilirsiniz.