Kullanıcı girişini kabul etme

Tamamlandı

Tip

Daha fazla ayrıntı için Metin ve resimler sekmesine bakın!

Programlar, onları kullanan kişilerle etkileşime geçince gerçekten güçlü hale gelir. C#'nin Console.ReadLine() yöntemi programınızı duraklatmanıza, kullanıcının bir şey yazmasını beklemenize ve bu bilgileri yakalamanıza olanak tanır.

Console.ReadLine() Kullanımı

Console.ReadLine() Yöntemini bir soru istemi olarak düşünün. Programınız bu satıra ulaştığında, kullanıcı yanıtını alana kadar bekler ve devam etmeden önce Enter tuşuna basar.

Kullanıcının yanıtını kaydetmek için bir değişken kullanarak "yakalamanız" gerekir:

string favoriteColor = Console.ReadLine();
Console.WriteLine("Oh, I love " + favoriteColor + " too!");

Bu kodda bir favoriteColor değişkendir (değeri tutan bir kapsayıcı). Bu programı çalıştırdığınızda giriş bekler. Kullanıcı Orange yazıp Enter tuşuna basarsa çıktı şöyle olur:

Orange
Oh, I love Orange too!

Bu kodu C# Kod Düzenleyicisi'nde kendiniz çalıştırmayı deneyebilirsiniz.

İsteminizin sonuna boşluk ekleme

Kullanıcı girişini daha okunabilir hale getirmek için Console.Write() ile Console.ReadLine() birleştirin:

Console.Write("What is your favorite color? ");
string favoriteColor = Console.ReadLine();
Console.WriteLine("Oh, I love " + favoriteColor + " too!");

isteminin sonundaki alana dikkat edin: "What is your favorite color? ". Bu olmazsa, kullanıcının girdisi metninize bitişik görünürdü: What is your favorite color?Orange. Alan eklemek daha net hale getirir.

Veri türlerini anlama

C# içindeki her değerin, bilgisayara ne tür bir değer olduğunu söyleyen bir veri türü vardır. Bazı yaygın veri türleri şunlardır:

  • Dize (string): Örneğin "Blue" veya "25" gibi, tırnak içine alınmış metin. Bir sayı bile tırnak içinde olduğunda metne dönüşür.
  • Tamsayı (int): Tırnak işaretleri olmadan yazılan bir tam sayı; örneğin 25 veya 100 gibi. Bunlarla matematik yapabilirsiniz.

Bu neden önemlidir? C# bu türlere farklı davranır. Sayıları birlikte (25 + 1 eşittir 26) ekleyebilirsiniz, ancak özel işleme olmadan doğrudan metne sayı ekleyemezsiniz.

Console.ReadLine() her zaman bir dize döndürür

Unutmamanız gereken temel bir kural, kullanıcı bir sayı yazarsa bile her zaman metin (dize) döndürmesidirConsole.ReadLine(). Örneğin:

string age = Console.ReadLine();
Console.WriteLine(age + 1); // This causes an error!

Bu kodu çalıştırıp 25 yazarsanız, program 26 yazdırmaz. Bunun yerine, "25" öğesini 1 metnine eklemeye çalışır; ancak C# buna izin vermez. Bu yaygın bir başlangıç hatasıdır!

Kullanıcı girişiyle matematik işlemi yapmak için önce metni sayıya dönüştürmeniz gerekir, ancak bunu daha sonra ele alacağız. Şimdilik şunu unutmayın: kullanıcının yazdığı her şey her zaman metin olarak değerlendirilir.