Mantıksal Operatörler
Mantıksal operatörler, ifade ettiğimiz önermeleri birbirine bağlamak için kullandığımız ve (&&
), veya (||
), değil (!
) sembolleridir. Önermeleri genellikle karşılaştırma operatörleri ile ifade ederiz. Tipten bağımsız olarak kullanılabilir.
Önerme: Mantıksal olarak doğrulanabilir veya yanlışlanabilir ifadelerdir. Örneğin: '15 sayısı 12 sayısından büyüktür.' ifadesi önermedir.
VE Operatörü ( &&
)
&&
)&&
sembolü ile kullanılır. İfadeler arasındaki yanlış (false
) sonucunu arar. Sondan bir önceki ifadeye kadar false
sonucunu arar ve false
sonucunu bulduğu ifadeyi döndürür. Eğer sondan bir önceki ifadeye kadar false
bulamaz ise sonuncu ifadeyi döndürür. Örnek.
Bu operatörün çalışma mantığı şöyledir.
Bunu şu şekilde daha güzel örnekleyebiliriz. Daha önce anlattığımız üzere number
tipi ele alındığında false
0 true
1 idi. Fakat 0 harici tüm değerler de yine true
değeri almaktaydı. Aynı şekilde string
olanlar için de hiçbir karakter içermeyen değer ('') false
herhangi bir karakter içeren değer ise true
idi.
VEYA Operatörü ( ||
)
||
)||
sembolü ile kullanılır. İfadeler arasındaki doğru (true
) sonucunu arar. Sondan bir önceki ifadeye kadar true
sonucunun arar ve true
sonucunu bulduğu ifadeyi döndürür. Eğer sondan bir önceki ifadeye kadar true
bulamaz ise sonuncu ifadeyi döndürür. Örnek.
|
sembolü "Alt-Gr + <" kombinasyonu ile elde edilir. İki sefer yapılırsa ||
elde edilir.
Bu operatörün çalışma mantığı şöyledir.
Daha iyi örnekle.
DEĞİL Operatörü ( !
)
!
)!
sembolü ile kullanılır. Bir ifadenin başında kullanıldığında, ifadenin kendi değerini ilk başta boolean tipine çevirir ve bu değerin tersini döndürür. false
ise true
, true
ise false
olarak sonuç döndürür.
Bu operatörün çalışma mantığı şöyledir.
Özel Değerlerin Mantıksal Karşılaştırmaları
Özel değerlerin &&
operatörü ile kullanımına bakalım. Sondan bir önceki ifadeye kadar undefined
, NaN
veya null
ile karşılaşırsa kontrolü bırakır karşılaştığı değeri döndürür.
Fakat veya operatörü bu değerleri görmezden gelir.
Değil !
operatörü hepsi için true
değeri döndürür.
Bu şu anlama gelmemektedir: undefined
, NaN
ve null
değerleri boolean olarak false
değerindedir. Bu önerme yanlıştır.
Operatörlerin Öncelikleri
Karşılaştırma yaparken farklı operatörleri bir arada kullanabilirsiniz. Bu durumda ve ile veya arasında öncelik nasıl olur ? Öncelik ve operatöründedir. ve operatör işlemlerinden sonra veya operatörüne geçilir. Örnek.
Kısa Devre
Mantıksal operatörlerde kısa devre; operatörlerin çalışma sırasında son ifadeyi döndüreceği durumda sondaki ifadeyi kod için kullanmaktır. Bu durum okunurluğu artıracak bir kapıdır. Şöyle ki:
&&
operatörü false
değeri arar. Son ifadeye kadar bulamazsa son ifadeyi döndürür. Yukarıdaki örneğe bakarsak ilk iki ifade true
olduğu için doğrudan son ifadeyi döndürür. Dolayısıyla değişkenleri manipüle etmek için de kullanılabilir. Başka bir örnekle:
&&
operatörü ilk false
değeri döndürür. sistem
değişkeninin değeri 'Android
' olduğu için ilk ifade true
sonuç verir dolayısıyla &&
operatörü son ifadeyi döndürür. Son ifade de 'mobil
' olduğu için cihaz
değişkeni 'mobil
' olarak atanır.
Aynısını ilk true
değerini döndüren ||
operatörü ile yapalım.
||
operatörü ilk true
değeri döndürür. sistem
değişkeninin değeri 'Android
' olduğu için false
sonuçlar verir dolayısıyla ||
operatörü son ifadeyi döndürür. Son ifade de 'mobil
' olduğu için cihaz
değişkeni 'mobil
' olarak atanır.
Last updated