static void Main(string[] args) { Console.WriteLine("Satış lİStesi varsayılan"); //git benim için bazı metodlar tanımla ve daha sonra yeni delegeta ler tanımla ve bunların sonucunda buradaki projeyi kullan List <Satis> satisListesi = SatisListesiHazirla(); foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } //BubleShort.Sirala<Satis>(satisListesi, delegate (Satis s1, Satis s2) { return s1.SatisTutari < s2.SatisTutari; }); s BubleShort.Sirala <Satis>(satisListesi, (s1, s2) => s1.SatisTutari > s2.SatisTutari); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Satış Tutarına Göre Sıralı Olan Bir Liste..."); foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Satış Tarihine göre bir sıralama yap"); //BubleShort.Sirala<Satis>(satisListesi, delegate (Satis s1, Satis s2) { return s1.SatisTarihi > s2.SatisTarihi; }); // bunun içerisine <string> verseydim tipi string olarak değerlendirecekti. yazıp parantez açtığımızda string bir liste isteyecektir. List<string> BubleShort.Sirala <Satis>(satisListesi, (s1, s2) => s1.SatisTarihi < s2.SatisTarihi); // burda sanki bir extension kullanıyoruz sanki bir linq sorgusu yazıyoruz gibi kullanabilriz. foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } Console.WriteLine(); Console.WriteLine(); List <int> sayilarim = new List <int>() { 234, 33, 245, 568, 2567, 1 }; //BubleShort.Sirala<int>(sayilarim, delegate (int i1, int i2) { return i1 > i2; }); // buradak mantıksal operatör kullandığımızdan dolayı buradaki sorgu i1 i2 den büük mü. bu sorunun cevabı ya evettir yada hayırdır.. BubleShort.Sirala <int>(sayilarim, (i1, i2) => i1 < i2); foreach (int item in sayilarim) { Console.WriteLine(item); } Console.ReadLine(); }
static void Main(string[] args) { Console.WriteLine("Satış lİStesi varsayılan"); //git benim içiçn bazı metodlar tanımmla ve daha sonra yeni delegate ler tanımla ve bunların akabinde buradaki projeyş kullan List <Satis> satisListesi = SatisListesiHazirla(); foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } BubleShort.Sirala <Satis>(satisListesi, delegate(Satis s1, Satis s2) { return(s1.SatisTutari < s2.SatisTutari); }); // bunu çağırabilemem için Satis sınıfınn içerisinde delegate in kullanmış olduğu tarzda metodlar olması lazım Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Satış Tutarına Göre Sıralı Olan Bir Liste..."); foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Satış Tarihine göre bir sıralama yap"); BubleShort.Sirala <Satis>(satisListesi, delegate(Satis s1, Satis s2) { return(s1.SatisTarihi > s2.SatisTarihi); }); // bunun içerisine <string> verseydim tipi string olarak değerlendirecekti. yazıp parantez açtığımızda string bir liste isteyecektir. List<string> foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } Console.WriteLine(); Console.WriteLine(); List <int> sayilarim = new List <int>() { 234, 33, 245, 568, 2567, 1 }; BubleShort.Sirala <int>(sayilarim, delegate(int i1, int i2) { return(i1 > i2); }); // buradak mantıksal operatör kullandığımızdan dolayı buradaki sorgu i1 i2 den büük mü. bu sorunun cevabı ya evettir yada hayırdır.. foreach (int item in sayilarim) { Console.WriteLine(item); } Console.ReadLine(); }
static void Main(string[] args) { Console.WriteLine("Satış lİStesi varsayılan"); //git benim içiçn bazı metodlar tanımmla ve daha sonra yeni delegate ler tanımla ve bunların akabinde buradaki projeyş kullan List <Satis> satisListesi = SatisListesiHazirla(); foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } BubleShort.Sirala <Satis>(satisListesi, Satis.SatisListesiniTutaraGoreHazirla); // bunu çağırabilemem için Satis sınıfınn içerisinde delegate in kullanmış olduğu tarzda metodlar olması lazım Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Satış Tutarına Göre Sıralı Olan Bir Liste..."); foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Satış Tarihine göre bir sıralama yap"); BubleShort.Sirala <Satis>(satisListesi, Satis.SatisListesiniTariheGoreHazirla); // bunun içerisine <string> verseydim tipi string olarak değerlendirecekti. yazıp parantez açtığımızda string bir liste isteyecektir. List<string> foreach (Satis item in satisListesi) { Console.WriteLine(item.SatisID + " " + item.SatisTarihi + " " + item.SatisTutari); } Console.WriteLine(); Console.WriteLine(); List <int> sayilarim = new List <int>() { 234, 33, 245, 568, 2567, 1 }; BubleShort.Sirala <int>(sayilarim, MyClass.SayiSirala); foreach (int item in sayilarim) { Console.WriteLine(item); } Console.ReadLine(); }