Operatörler

<< Click to Display Table of Contents >>

Navigation:  Likom Gusto Olay Yönetimi > İleri Düzey Tanımlar ve Yazılım Kodları > C# Diline Giriş >

Operatörler

Previous pageReturn to chapter overviewNext page

4 tip operatör seti bulunmaktadır. Bunlar: aritmetik, bit tabanlı, ilişkisel ve mantıksal operatörlerdir.

 

Aritmetik Operatörler


 

Operatör

Anlamı

+

Toplama

-

Çıkartma

*

Çarpma

/

Bölme

%

Modülüs(Kalan)

++

Arttırma

- -

Eksiltme

 

Arttırma ve Eksiltme

Arttırma operatörü operantına 1 ekler, eksiltme operatorü ise 1 çıkartır. Bu yüzden aşağıdaki ifadeler aynıdır.

x = x + 1;

x++;  // son ek

++x; // ön ek    

x = x - 1;

x--; // son ek

--x; // ön ek

Arttırma Operatörü

Eksiltme Operatörü

Operatörü ön ek veya son ek olarak örnekteki kullanımda hiç bir fark yoktur. Her ikisi de x değişkeninden 1 çıkartır veya 1 arttırır. Fakat bu ifadeler başka bir değişkene atandığında çok fark vardır. Eğer arttırma operatörü operantın önünde yer alıyorsa C#, deyimin geri kalan kısmında kullanılmak üzere operandın değerini hesap etmeden önce işlemi gerçekleştirecektir. Eğer operatör operandının peşinden geliyorsa C# artırma veya eksiltme işleminden çnce operandın değerini hesap edecektir.

Örneğin

int x=5;

y = x++;

kullanımında y 5 değerinde olacaktır.

 

int x=5;

y = ++x;

 

kullanımında ise y 6 değerinde olacaktır.

 

İlişkisel ve Mantıksal Operatörler


İlişkisel operatörler (relational operators) ve mantıksal operatörler(logical operators) terimlerinde geçen ilişkisel sözcüğü değerlerinin birbiri arasında sahip olabileceği ilişkiyi; mantıksal sözcüğü ise true ve false değerlerin birbiri ile bağlanabilme yollarını ifade eder. İlişkisel operatorler  true ve false değerler ürettikleri için genellikle mantıksal operatörler ile birlikte kullanılırlar.

 

Operatör

Anlamı

İlişkisel Operatörler

==

Eşittir

!=

Eşit değildir

>

Büyüktür

<

Küçüktür

>=

Büyüktür veya Eşittir

<=

Küçüktür veya Eşittir

Mantıksal Operatörler

&&

Ve

||

Veya

^

XOR

!

Değil

,

İlişkisel ve mantıksal operatörlerin sonucu bool değerdir. C#'ta ==  ve != operatörleri ile tüm nesneler eşitlik veya eşitsizlik açısından karşılaştırılabilir. Ancak, karşılaştırma operatörleri olan <,>,<=,>=, sadece sıralama ilişkisini destekleyen tiplere uygulanabilir.

 

Bileşik Atama


C#, belirli atama ifadelerinin kodlanmasını kolaylaştıran özel bileşik atama operatörleri sağlar.

Örneğin

x = x + 10;

x += 10;

ile aynıdır.

y = y - 1;

y -= 1;

ile aynıdır.

x = x % 2;

x %= 2;

ile aynıdır.

 

Bit Tabanlı Operatörler


Bit tabanlı operatörler(VE,VEYA,XOR ve DEĞİL) sırası ile şunlardır: & , | , ^ ve  ~. Bu operatörler daha önce bahsedilen mantıksal eşdeğerleri ile aynı işlemi gerçekleştirirler. İkisi arasındaki fark, bit tabanlı operatörlerin bitleri esas alarak tek tek bitler üzerinde işlem yapmalarıdır.

 

Operatör

Anlamı

&

Bit tabanlı VE

|

Bit tabanlı VEYA

^

Bit tabanlı XOR

>>

Sağa kaydırma

<<

Sola Kaydırma

~

Tümleyeni

 

Örnek:

      int y;

      int x=12;

      /* x:12 = 1100

               9 = 1001

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

                   1101

          * */

         y = x | 9; // y=13

     

 

Kaydırma Operatörleri

C# ta, bir değeri oluşturan bitleri sağa veya sola belirli bir miktar kaydırmak mümkündür. C#'ta iki tip kaydırma operatörü bulunmaktadır. (<<) sola kaydırma ve (>>) sağa kaydırma.  Sola kaydırma 2 ile çarpma, sağa kaydırma ise 2 ye bölmeye eş değerdir.