Bir operatör, derleyiciye belirli matematiksel veya mantıksal işlemler gerçekleştirmesini söyleyen bir semboldür. C#, zengin yerleşik operatörlere sahiptir ve aşağıdaki operatör türlerini sunar.
- Aritmetik operatörler
- İlişkisel Operatörler
- Mantıksal operatörler
- Bitsel Operatörler
- Atama Operatörleri
- Çeşitli Operatörler
Bu derste, aritmetik, ilişkisel, mantıksal, bitsel, atama ve diğer operatörler tek tek açıklanacaktır.
C# Aritmetik Operatörler
Aşağıdaki tabloda C# ile desteklenen tüm aritmetik operatörler gösterilmektedir.
Verilen örnekte A=10 ve B=20 olarak kabul edilmiştir.
Operatör | Tanımı | Örnek |
---|---|---|
+ | İşlenen iki değeri toplar | A + B = 30 |
– | İşlenen ilk değerden ikincisini çıkarır | A – B = -10 |
* | İşlenen iki değeri çarpar | A * B = 200 |
/ | İşlenen ilk değeri ikinci değere böler | B / A = 2 |
% | İşlenen ilk değerin ikinci değere bölümünden kalanı verir. (Sayının modunu alır) | B % A = 0 |
++ | İşlenen değeri bir arttır | A++ = 11 |
— | İşlenen değeri bir azaltır | A– = 9 |
C# İlişkisel Operatörler
Aşağıdaki tabloda C# ile desteklenen tüm ilişkisel operatörler gösterilmektedir.
Verilen örnekte A=10 ve B=20 olarak kabul edilmiştir.
Operatör | Tanım | Örnek |
---|---|---|
== | İşlenen iki değer bir birine eşitse true, bir birinden farklıysa false değerini üretir. | (A == B) false |
!= | İşlenen iki değer bir birine eşitse false , bir birinden farklıysa truedeğerini üretir. | (A != B) true |
> | İşlenen iki değerden ilk değer büyükse true, ilk değer büyük değilse false değerini üretir. | (A > B) false |
< | İşlenen iki değerden ilk değer büyükse false , ilk değer büyük değilse true değerini üretir. | (A < B) true |
>= | İşlenen iki değerden ilk değer büyükse yada eşitse true, ikinci değer büyükse false değerini üretir. | (A >= B) false |
<= | İşlenen iki değerden ikinci değer büyükse yada eşitse true, ilk değer büyükse false değerini üretir. | (A <= B) true |
C# Lojik Operatörler
Aşağıdaki tabloda C# ile desteklenen tüm lojik operatörler gösterilmektedir.
Verilen örnekte A=true ve B=false olarak kabul edilmiştir.
Operatör | Tanımı | Örnek |
---|---|---|
&& | Lojik ve işlemi yapar. iki değerde true ise sonuç true olur. | (A && B) false |
|| | Lojik veya işlemi yapar. İki değerden biri true ise sonuç true olur. | (A || B) true |
! | Lojik değil işlemi yapar. Mevcut durumu tersler. true ise false, false ise true olarak değiştirir. | !(A && B) false |
C# Bitsel Operatörler
p | q | p & q | p | q | p ^ q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 1 |
A = 60; ve B = 13; olduğunu düşünürsek, bu sayıların bitsel karşılıkları aşağıdaki gibi olacaktır. Bitsel olarak karşılaştırılır.
A = 0011 1100
B = 0000 1101
——————-
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~A = 1100 0011
Operatör | Tanımı | Örnek |
---|---|---|
& | Binary VE | (A & B) = 12, 0000 1100 |
| | Binary VEYA | (A | B) = 61, 0011 1101 |
^ | Binary ÖZEL VEYA | (A ^ B) = 49, 0011 0001 |
~ | Binary DEĞİL | (~A ) = 61, 1100 0011 |
<< | Binary SOLA öteleme | A << 2 = 240, 1111 0000 |
>> | Binary SAĞA öteleme | A >> 2 = 15, 0000 1111 |
C# Atama Operatörler
Operatör | Tanımı | Örnek |
---|---|---|
= | Sağdaki işlem sonucunu soldaki değişkene aktarır. | C = A + B |
+= | Soldaki değeri sağdaki değer ile toplayıp, soldaki değere aktarır. | C += A C = C + A |
-= | Soldaki değeri sağdaki değerden çıkarıp, soldaki değere aktarır. | C -= A C = C – A |
*= | Soldaki değeri sağdaki değer ile çarpıp, soldaki değere aktarır. | C *= A C = C * A |
/= | Soldaki değeri sağdaki değere bölüp, soldaki değere aktarır. | C /= A C = C / A |
%= | Soldaki değerin sağdaki değere modunu alıp, soldaki değere aktarır. | C %= A C = C % A |
<<= | SOL shift VE operatörü | C <<= 2 C = C << 2 |
>>= | SAĞ shift VE operatörü | C >>= 2 C = C >> 2 |
&= | Bitsel VE atama operatörü | C &= 2 C = C & 2 |
^= | Bitsel ÖZEL VEYA atama operatörü | C ^= 2 C = C ^ 2 |
|= | Bitsel dahili VEYA atama operatörü | C |= 2 C = C | 2 |
C# Özel Operatörler
Operatör | Tanımı | Örnek |
---|---|---|
sizeof() | nesnenin bellek boyunu döndürür. | sizeof(int), 4 |
typeof() | class adını döndürür. | typeof(StreamReader); |
& | değişkenin adresini döndürür. | &a; |
* | Pointer için kullanılır. | *a; pointer oluşturur. |
? : | Şartlı ifade operatörü | Eğer true ? Doğru ise A: Değilse B |
is | Nesnenin belirtilen tipte olup olmadığına bakar. | String is “Merhaba” |
as | Nenseyi belirtilen sınıf olarak okumaya çalışır. | Object obj = new StringReader(“Merhaba”);StringReader r = obj as StringReader; |
Add Comment