- Değişken tanımlamak ve ona değer atamak
int,double,decimal,bool,char,stringvevararasında doğru seçim yapmak- Türleri dönüştürmek:
(double)gibi tür dönüştürmeler veint.Parse - String interpolasyonunu, biçim belirteçlerini ve string metotlarını kullanmak
Bir oyunda oyuncunun adı, puanı, kalan canları ve seviyesi vardır. Program bu bilgileri bir yerde saklamalı ve oyun ilerledikçe değiştirmelidir. Bunun için değişkenler kullanılır. C#'ta her değişkenin, içinde ne tür bir değer tutabileceğini belirleyen bir türü vardır.
Değişkenler
Bir değişken tanımlamak için önce türü, sonra adı yazılır ve = işaretiyle değer atanır. Daha sonra değişkene yeni bir değer verebilirsin ama yalnızca aynı türden. Adlar genellikle küçük harfle başlar, sonraki her sözcük büyük harfle yazılır: playerName, livesLeft.
string playerName = "Leyla";
int score = 0;
int livesLeft = 3;
bool isGameOver = false;
score = score + 50;
score += 25;
livesLeft--;
Console.WriteLine(playerName);
Console.WriteLine(score);
Console.WriteLine(livesLeft);
Console.WriteLine(isGameOver);Leyla 75 2 False
score += 25,score = score + 25ifadesinin kısaltmasıdır;-=,*=ve/=da vardır.livesLeft--değeri 1 azaltır,++ise 1 artırır.booldeğeri ekranda büyük harfle görünür (Trueya daFalse), kodda ise küçük harfle yazılır:true,false.
Temel türler
| Tür | Ne tutar | Örnek |
|---|---|---|
int | tam sayılar (yaklaşık ±2,1 milyara kadar) | int age = 12; |
long | çok büyük tam sayılar | long views = 3_000_000_000; |
double | ondalıklı sayılar (ölçümler, bilimsel hesaplar) | double height = 1.52; |
decimal | para ve kesin ondalık hesaplamalar | decimal price = 4.99m; |
bool | mantıksal değer: true ya da false | bool isOpen = true; |
char | tek bir karakter, tek tırnak içinde | char grade = 'A'; |
string | metin, çift tırnak içinde | string city = "Baku"; |
`var` ve `const`
Tür sağ taraftan açıkça anlaşılıyorsa onun yerine var yazabilirsin; derleyici türü kendisi belirler. Bu, değişkenin türsüz olduğu anlamına gelmez: var city = "Baku"; yazdıktan sonra city sonsuza dek string olarak kalır. Hiç değişmemesi gereken değerler için const kullanılır.
var city = "Baku";
var year = 2026;
var price = 2.5m;
const int DaysInWeek = 7;
Console.WriteLine(city.GetType().Name);
Console.WriteLine(year.GetType().Name);
Console.WriteLine(price.GetType().Name);
Console.WriteLine(DaysInWeek * 4);String Int32 Decimal 28
GetType().Name, türün .NET'teki adını gösterir: int aslında Int32'nin, string ise String'in kısa adıdır. city = 5; yazmayı denersen derleyici CS0029 hatası verir: int, string'e dönüştürülemez. DaysInWeek = 8; yazmak ise hiç mümkün değildir, çünkü bu bir sabittir.
Sayılar ve dönüşümler
7 / 2 işleminin 3 verdiğini zaten biliyorsun. Ondalıklı bir sonuç gerekiyorsa sayılardan birini double'a dönüştür: (double)7 / 2. Buna tür dönüştürme (cast) denir. Ters yönde (int)3.99 ondalık kısmı atar ve 3 verir; yuvarlama yapmaz! Metni sayıya çevirmek için int.Parse, sayıyı metne çevirmek için ToString() kullanılır.
using System.Globalization;
CultureInfo.CurrentCulture = CultureInfo.InvariantCulture;
int apples = 7;
int friends = 2;
Console.WriteLine(apples / friends);
Console.WriteLine((double)apples / friends);
Console.WriteLine((int)3.99);
Console.WriteLine(Math.Round(3.99));
int year = int.Parse("2026");
Console.WriteLine(year + 1);
Console.WriteLine(year.ToString() + "!");3 3.5 3 4 2027 2026!
String'ler ve interpolasyon
Metni + ile birleştirmek kısa sürede yorucu olur. String interpolasyonu daha kolaydır: string'in önüne $ konur, değişkenler ve ifadeler ise süslü parantez içinde doğrudan metne yazılır. Parantez içinde iki noktadan sonra bir biçim verebilirsin: F2 ondalık ayırıcıdan sonra iki basamak, N0 ise binlik ayırıcılı bir tam sayı demektir.
using System.Globalization;
CultureInfo.CurrentCulture = CultureInfo.InvariantCulture;
string name = "Murad";
int score = 95;
decimal price = 4.5m;
int views = 1234567;
Console.WriteLine("Hi, " + name + "!");
Console.WriteLine($"{name} scored {score} points.");
Console.WriteLine($"Next time: {score + 5}");
Console.WriteLine($"3 tickets: {price * 3:F2} AZN");
Console.WriteLine($"Views: {views:N0}");Hi, Murad! Murad scored 95 points. Next time: 100 3 tickets: 13.50 AZN Views: 1,234,567
String de bir nesnedir ve kullanışlı özellikleri ve metotları vardır. Dikkat: string'ler değiştirilemez; ToUpper() gibi metotlar orijinali değiştirmez, yeni bir string döndürür. Karakterlere indeksle erişilir ve sayma sıfırdan başlar.
string city = " Baku ";
string clean = city.Trim();
Console.WriteLine(clean.Length);
Console.WriteLine(clean.ToUpper());
Console.WriteLine(clean.Contains("ak"));
Console.WriteLine(clean.Replace("Baku", "Ganja"));
Console.WriteLine(clean[0]);
Console.WriteLine($"[{city}]");4 BAKU True Ganja B [ Baku ]
Trim() metodunun orijinal city string'ini değiştirmediğini gösterir.Önemli noktalar
- Bir değişkenin türü, adı ve değeri vardır:
int score = 0;. - Tam sayılar için
int, ondalıklar içindouble, para içindecimal, metin içinstringkullan. vartürü derleyiciye belirletir ama tür sonradan değişmez;constdeğiştirilemeyen bir değerdir.(double)veint.Parsetürleri dönüştürür;(int)3.99yuvarlamaz,3verir.$ile interpolasyon metin oluşturmanın en kolay yoludur;{x:F2}iki ondalık basamak gösterir.- String'ler değiştirilemez:
ToUpper(),Trim()veReplace()yeni bir string döndürür.
Kendini test et
10 soru. Her doğru cevap XP kazandırır.