C# Console Uygulamaları

C# ile Tekrar Eden İfadeleri Kaldırma

Tekrarlanan ifadeleri kaldırıp, eşsiz isimleri yazdıran program;

Aşağıdaki örnekte noktalı virgül ile “Ali”,Yağmur;Mehtap;Serap;Yağmur;Ali” şekliden girilen ifadelerde tekrar eden isimleri temizleyip, ekrana eşşiz isimleri yazdıran program.

static void Main(string[] args)
{
// Kullanıcı girişi için ekrana bilgi verme
Console.WriteLine("Lütfen Kullanıcı isimlerini noktalı virgül ile giriniz.");


// Kullanıcı isimlerini console ekranından alma
string strAd = Console.ReadLine();


// strAd = "Ahmet;Veysel;Mahmut;Ayşe;Nurken;Ahmet;Kamil";


// Noktalı virgül ile girilen isimleri ayrıp bir diziye aktarma
string[] isimDizi = strAd.Split(';');


// Distinct() tekrarlayan ifadeleri silen LINQ fonksiyonu
string[] essizIsımDizisi = isimDizi.Distinct().ToArray();


// Dizideki değerleri birleştirmek için StringBuilder kullanmak daha etkili olacaktır.
StringBuilder essizKullaniciIsımleri = new StringBuilder();


// Tekrar oluşturduğumuz diziyi ; ile birleştiriyoruz.
foreach (string isim in essizIsımDizisi)
{
essizKullaniciIsımleri.Append(isim + ";");
}


// en sonda yerleştirilen ; sembolünü kaldıralım.
essizKullaniciIsımleri.Remove(essizKullaniciIsımleri.ToString().LastIndexOf(';'), 1);


// En güzel olan kısım ekrana yazdıralım.
Console.WriteLine();
Console.WriteLine("Tekrarsız Kullanıcı İsimleri Listesi");
Console.WriteLine(essizKullaniciIsımleri.ToString());

Console.ReadLine();
}

 

Yorum Yap