LINQ ilk bor .NET 3.5 platformasida taqdim etilganida C# va VB tillari allaqachon LINQ texnologiyasini qo’llash uchun zarur bo’lgan dasturiy konstrukstiyalar bilan kengaytirilgan edi. Xususan C# tilida LINQ ga aloqador quyidagi vositalar mavjud:
Nooshkor toifalangan lokal o’zgaruvchilar,
Ob’yektlar va kollektsiyalarni initsializatsiya qilish sintaksisi,
Lyamda-ifodalar,
Anonym toifalar.
Bular bilan biz avval tanishgan bo’lsak ham, mazkur vositalarga yana bir nazar tashjlaylik.
Nooshkor toifalangan lokal o’zgaruvchilar quyidagicha ishlatilar edi:
static void NooshkorOzgaruvchilarEloni ()
{
// Nooshkor toifalangan lokal o’zgaruvchilar e’lonlari
var butunQiymat = 0;
var mantiqiyQiymat = true;
var satrQiymat = "Vaqt o’tib bormoqda";
// Asosda yotgan toifalar nomlarini chiqarish
Console.WriteLine("butunQiymat bu: {0}", butunQiymat.GetType().Name);
Console.WriteLine("mantiqiyQiymat bu: {0}",
mantiqiyQiymat.GetType().Name);
Console.WriteLine("satrQiymat bu: {0}", satrQiymat.GetType().Name);
}
Tilning bu vositasi LINQ qo’llanganida qulay va ko’pincha hatto zaruriydir.
Ob’yektlar va kollektsiyalarni initsializatsiya qilish sintaksisini esa List kollektsiyasini har biri ikkita X va Y koordinatali Nuqta ob’yeketidan iborat Tortburchak ob’yektlari bilan quyidagicha to’ldirishda ko’rishimiz mumkin:
List< Tortburchak > meningTortburchak = new List< Tortburchak >
{
new Tortburchak {TepaChap = new Nuqta { X = 10, Y = 10 },
PastOng = new Nuqta { X = 200, Y = 200}},
new Tortburchak {TepaChap = new Nuqta { X = 2, Y = 2 },
PastOng = new Nuqta { X = 100, Y = 100}},
new Tortburchak {TepaChap = new Nuqta { X = 5, Y = 5 },
PastOng = new Nuqta { X = 90, Y = 75}}
};
Do'stlaringiz bilan baham: |