C# Değişkenler, Tipleri, Atamalar ve Dönüşümleri yazımız ile C# derslerimize devam ediyoruz. C Sharp degiskenler her programlama dilinde vardır. Diğer adları ise “veri tutucularıdır”. Değişkenler, girdiğimiz değerleri alan veya programın çalışmasıyla bazı değerlerin atandığı verileri saklarlar.
C# hakkındaki diğer derslerim için tıklayınız.
Dikkat edilmesi gerekenler
- Her zaman bir değerleri olmalıdır. Değeri yoksa null olarak tanımlanmalıdır
- Tanımlama esnasında büyük küçük harf ayrımı vardır
- Değişken adları rakamlarla başlayamaz
- Program tarafından kullanılan class, using gibi isimler verilemez
- Aynı kod bloğu içerisinde aynı adda iki değişken olamaz
- İşlem operatörleri içeremez. Kelimeleri ayırmak için alt çizgi ( _ ) kullanabilirsiniz
- Boşluk kullanamazsınız.
- Zorunlu olmasa bile Türkçe karakter kullanılmamalıdır.
- Değişken adları amacını belirten mantıklı isimlerle tanımlanmalıdır.
- Çok uzun isimler verilmemelidir. Kısa ve öz olmalıdır.
Değişken tanımlama işlemi aşağıdaki şekilde olmaktadır.
(Değişken türü) (Değişken Adı) = (Değişken Değeri)
String KullAdi = String.Empty; String KullAdi = null;
Ek Bilgi = Programlama dilleri de space tuşunun verdiği boşluğun ASCII (Decimal 32 / HEX 20 ) kodlarında bir karşılığı olduğundan dolayı “boş” olarak görülmemektedir. Genel “White Space” olarak anılırlar. Programlama boş demek null demektir.
String Degisken = “ ”; // boş değil “boşluk” değeri var String Degisken = null; // tamamen boş
C Sharp Degiskenler ve Tipleri
Aşağıdaki listede c sharp degiskenler, tanımlama şekilleri ve değer bilgileri verilmiştir.
#region DEGISKENLER
byte b = 5; //1 bayt | 0 .... 255 (Tam Sayı)
sbyte sb = 5; //1 bayt | -128 .... 127 (Tam Sayı)
short s = 5; //2 bayt | -32.768 .... 32.767 (Tam Sayı)
ushort us = 5; //2 bayt | 0 .... 65.535 (Tam Sayı)
Int16 i16 = 5; //2 bayt | -32.768 ..... 32.767
int i = 5; //4 bayt | -2.147.483.648 .... 2.147.483.647 (Tam Sayı)
Int32 i32 = 5; //4 bayt | -2.147.483.648 ..... 2.147.483.647
Int64 i64 = 5; //8 bayt | -9.223.372.036.854.775.808 ..... 9.223.372.036.854.775.807
uint ui = 5; //4 bayt | 0 ... 4.294.967.295 (Tam Sayı)
long l = 5; //8 bayt | -9.223.372.036.854.775.808 .... 9.223.372.036.854.775.807 (Tam Sayı)
ulong ul = 5; //8 bayt | 0...18.446.744.073.709.551.615 (Tam Sayı)
float f = 5; //4 bayt | ±1.5*10-45 .... ±3.4*1.038 (reel sayı)
double d = 5; //8 bayt | ±5.0*10-324 .... ±1.7*10.308 (reel sayı)
decimal de = 5; //16 bayt | ±1.5*10-28 .... ±7.9*1.028 (reel sayı)
char c = 'c'; //2 bayt | tek karakter tutar - tek tırnak kullanılır
string str = "s"; //sınırsız | Metin tutar - çift tırnak kullanılır.
bool b1 = true; // "doğru" değeri
bool b2 = false; // "yanlış" değeri
DateTime dt = DateTime.Now; // tarih bilgisi tutar.
//DateTime.Now şuandaki tarih ve saati alır.
object o1 = 'o';
object o2 = "o";
object o3 = 5.25F;
object o4 = 5.25D;
object o5 = 5.25M;
object o6 = 5;
// object her türden veri alır. Sonuçta tüm değişken tipleri
// object türünden türetilmiştir. O sebeple her türden veriyi
// object türüne atayabilirsiniz.
var v = 5;
//Bu tür değişken tanımlamalarına bilinçsiz değişken tanımlaması denir
//Bilinçsiz değişken tanımlamalarında çoklu değişken tanımlaması yapamayız.
//Ayrıca değişkene tanımlanır tanımlanmaz değer vermeliyiz.
//derleyici değişkenin tipini değerden anlar.
#endregion
C Sharp Değişken Tanımlama Şekilleri
Aşağıdaki listede değişkenlerin alabilecekleri değerlere örnekler, c sharp degiskenler ‘e değer atamaların nasıl yapılabileceği ve atama sonuçların ne sonuçlar alabileceği görülmektedir.
#region TANIMLAMA SEKILLERI
// tanımlama şekilleri
string str1 = string.Empty;
str1 = "Mustafa Bükülmez";
string str2 = "Mustafa Bükülmez";
string str3 = "Mustafa" + "Bükülmez"; // değişkenin alacağı değer, MustafaBükülmez
string str4 = "Mustafa Bükülmez", str5; // çoklu değişken tanımlama
int int1 = 5 + 5; // değişkenin alacağı değer, 10
int int2 = 5 * 5; // değişkenin alacağı değer, 25
bool b3 = 3 < 4; // mantıksal sınama yapılabilir. ancak sonuç true yada false olmalıdır.
// 3 küçüktür 4 sınamasının sonucu değişkene atanır.
// değişkenin alacağı değer true olacaktır.
// Bu tanımlama şekli ArrayList için tanımlama şeklidir.
// Başka bir yazıda etraflıca anlatacağız.
int[] ArryInt = new int[5]; // 5 adet int değeri alabilir
ArryInt[0] = 0;//1
ArryInt[1] = 1;//2
ArryInt[2] = 2;//3
ArryInt[3] = 3;//4
ArryInt[4] = 4;//5
ArryInt[5] = 5;//6 - // bu değer ArrayList' e eklenmeyecektir
// [] köşeli parantezler değişkenin bir arrylist olduğunu belirtir.
// Tüm değişken tipleri için geçerlidir.
#endregion
C Sharp Değişken Dönüşümleri
Aşağıdaki listede c sharp degiskenlerin dönüşümlerine örnekler verilmiştir.
String olan bir değişken int değişkenine nasıl atanır?.
Datetime olan değişken string türe nasıl dönüştürülür?.
#region DEGISKEN DONUSUMLERI
//Değişken Dönüşümleri
string str10 = "10";
int int10 = 10;
string str11 = str10 + int10.ToString(); // değişkenin alacağı değer, 1010
//diğer tipleri string'e dönüştürürken .ToString() kullanılır
int int11 = int10 + Convert.ToInt32(str10); // değişkenin alacağı değer, 20
int int12 = int10 + int.Parse(str10); // değişkenin alacağı değer, 20
//int parse string den dönüştürmek için kullanılır.
//string değerde sayı değil başka bir karakter varsa FormatExeption hatası verir.
int int13 = int10 + int.Parse(b1); // bool'dan int.parse işleminde bool değişkenin altı çizilir
//bu satırda hata verecektir
b1 = true;
string str20 = b1.ToString(); // değişkenin alacağı değer, True (değişken true ise "true", false ile "false")
// Yani şöyle olacak string str20 = "true";
d = 5.25;
string str21 = d.ToString(); // değişkenin alacağı değer 525 olur. String dönüşümlerinde ondalık değerlerde nokta kaybolur.
// nokta kaybolmasın istersek String.Format kullanmamız gerekir.
string str22 = DateTime.Now.ToString("dd.MM.yyyy");
// örn. 03.02.2018 23:56:26.000 şeklindeki tarihi "03.02.2018" olarak aldık.
//"dd.MM.yyyy" olduğu için ayırıcı olarak nokta koyar nokta yerine slash kolaysak tarih ayracı slash olur.
string str23 = DateTime.Now.ToString("HH:mm");
// örn. 03.02.2018 23:56:26.000 şeklindeki tarihi "23:56" olarak aldık.
//dd = gün (iki karakter gün)
//MM = ay (iki karakter ay) MMM yazarsak Ock, Şbt gibi kısaltma alır.
//yyyy = yıl (dört karakter yıl) yy yazarksa 17, 18 olarak alır.
//HH = saat
//mm = dakika
//ss = saniye
#endregion
Elimden geldiği kadar ayrıntıya inmeye çalıştım dostlar. En çok kullanacağımız şeyler değişkenler olduğundan dersler ilerledikçe daha bir çok kullanım şekli göreceğiz.
C sharp Degiskenler, Tipleri, Atamalar ve Dönüşümleri dersimiz de bu kadar dostlar. Diğer derslerimizde görüşmek üzere.
C# hakkındaki diğer derslerim için tıklayınız.
Sağlıcakla ve takipte kalın. ;)
