Karşılaştırma operatörleri
İki sayının birbirine göre büyüklüğünü ve küçüklüğünü kontrol ederler. Tabii ki yalnızca sayısal türdeki (char da dâhil) değişken ya da sabitlerle kullanılabilirler. Charla sayısal türler karşılaştırıldığında charın Unicode karşılığı hesaba katılır. Bu operatörler şunlardır: < (küçüktür), > (büyüktür), <= (küçük eşittir), >= (büyük eşittir), == (eşittir), != (eşit değildir),
Örnekler:
static void Main()
{
bool a = 4 < 6;
bool b = 6 > 5;
bool c = 7 <= 7;
bool d = 9 >= 12;
bool e = 10 == 12;
bool f = 1 != 8;
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(c);
Console.WriteLine(d);
Console.WriteLine(e);
Console.WriteLine(f);
Console.ReadKey();
}
Bu program ekrana alt alta True, True, True, False, False ve True yazacaktır.
Mantıksal operatörler
Bu operatörler true veya false sabit ya da değişkenleri mantıksal ve, veya, değil işlemine sokarlar. Bunlar && (ve), || (veya) ve ! (değil) operatörleridir. Örnekler:
static void Main()
{
bool b1 = 35 > 10 && 10 == 50; //false
bool b2 = 35 > 10 && 10 != 50; //true
bool b3 = 5 ==4 || 12 * 3 == 200; //false
bool b4 = 5 < 4 || 45 / 5 == 9; //true
bool b5 = !(5 < 4); //true
Console.WriteLine(b1);
Console.WriteLine(b2);
Console.WriteLine(b3);
Console.WriteLine(b4);
Console.WriteLine(b5);
Console.ReadKey();
}
Eğer ! operatöründen sonra bir değişken ya da sabit yerine bir ifade geliyorsa ifadeyi parantez içine almak zorundayız.
Atama ve işlemli atama operatörleri
Şimdiye kadar çok kullandığımız = operatörüyle ilgili bilmeniz gereken iki şey var.
- Sol tarafta kesinlikle yalnızca bir tane değişken olmalı. Örneğin aşağıdaki gibi bir kullanım hatalıdır.
int a=0, b=0;
a+b=20;
- = operatöründe işlemler sağdan sola gerçekleşir ve = operatörü operandlarıyla birlikte atadığı değeri tutar. Örnek:
static void Main()
{
byte b=7, a=1, c;
c=a=b;
Console.Write(a+” “+b+” “+c);
Console.ReadKey();
}
Bu program ekrana yan yana üç tane 7 yazacaktır. c=a=b; satırında önce b a’ya atanır ve a=b ifadesi 7 değerini tutar. Çünkü a=b atamasında 7 sayısı atanmıştır. Sonra a=b ifadesinin tuttuğu 7 sayısı c’ye atanır. Sonunda üç değişkenin değeri de 7 olur. Ancak şu örnek hatalıdır:
static void Main()
{
byte b=7, a=1, c;
(c=a)=b;
Console.Write(a+” “+b+” “+c);
}
Burada önce a c’ye atanıyor ve c=a ifadesi 1 değeri tutuyor ve ifademiz 1=b ifadesine dönüşüyor. Atama operatörünün prensibine göre böyle bir ifade hatalı olduğu için program derlenmeyecektir. Bir de işlemli atama operatörleri vardır. Aslında bunlar = operatörünün yaptığı işi daha kısa kodla yaparlar:
- a=a+b; yerine a+=b;
- a=a-b; yerine a-=b;
- a=a*b; yerine a*=b;
- a=a/b; yerine a/=b;
- a=a%b; yerine a%=b;
- a=a&b; yerine a&=b;
- a=a^b; yerine a^=b;
kullanılabilir.
?: operatörü
?: operatörü C#’ta üç operand alan tek operatördür. Verilen koşula göre verilen değerlerden (object türünden) birini tutar. Kullanımı şöyledir:
koşul?doğruysa_değer:yanlışsa_değer
Örnek:
static void Main()
{
Console.Write(“Programla Dersini Seviyor musunuz? (e, h): “);
string durum = Console.ReadLine();
Console.Write(durum == “e” ? “Teşekkürler!!!…” : “Sağlık olsun…”);
Console.ReadKey();
}
Tabii ki verilen değerlerin illa ki sabit olma zorunluluğu yoktur, değişken ya da ifade de olabilir.
İşaret değiştirme operatörü (-)
– operatörü bir değişken, sabit ya da ifadenin işaretini değiştirmek için kullanılır. Örnekler:
static void Main()
{
int a = 50;
int b = -a;
int c = -23;
int d = -(a + b + c);
int e = -12;
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(c);
Console.WriteLine(d);
Console.WriteLine(e);
Console.ReadKey();
}
Stringleri yan yana ekleme operatörü(+)
+ operatörü stringleri veya charları yan yana ekleyip operandlarıyla birlikte string olarak tutar.
NOT: + ve – operatörleri aynı zamanda sayısal sabit, değişken ve ifadeleri toplamak ve çıkarmak için de kullanılır.