Interfeys toifalari tushunchasi Interfeys toifalarni abstract bazaviy sinflar bilan taqqoslash Maxsus interfeyslarni kiritish


Download 0.77 Mb.
bet44/50
Sana26.01.2023
Hajmi0.77 Mb.
#1129439
1   ...   40   41   42   43   44   45   46   47   ...   50
Bog'liq
MAVZULAR UMUMIY

Lyamda-ifodalar quyidagi shaklda bo’ladi:
( Ishlob berish uchun argumentlar ) => { Ishlov beruvchi operatorlar }
Misol:
static void LamdaIfodalarSintaksisi ()
{
// Butun qiymatlar ro’yhatini yaratish
List butunRoyxat = new List();
butunRoyxat.AddRange (new int[] { 20, 1, 4, 8, 9, 44 });
// Endi C# ning lyambda-ifodasini qo’llash
List juftSonlar = butunRoyxat.FindAll(i => (i % 2) == 0);
// Juft sonlarni chiqarish
Console.WriteLine("Massivdagi juft sonlar:");
foreach (int juftSon in juftSonlar)
{
Console.Write("{0}\t", juftSon);
}
Console.WriteLine();
}

LINQ so’rovlarini elementar massivlarga qo’llash
LINQ so’rovlariga ega bo’lgan C# kodining faylida System.Linq ismlar fazosi import qilingan bo’lishi kerak, ya’ni ushbu direktiva bo’lishi kerak:
using System.Linq;
Endi massiv elementlari ichidan biror xussusiyatga ega bo’lganlarini ajratib olishga oid LINQ so’rovini amalga oshiruvchi ushbu dasturni ko’rib chiqaylik:
using System;
using System.Linq;
using System.Collections;
namespace MassivUzraLinq
{
class Program
{
// Satrlar uzra LINQ so'rovini amalga oshirish
static void SatrlarUzraSorov()
{
// Satrlar massivi bor deb faraz qilaylik
string[] JoriySuperMarketlar = {"Makro",
"Yangi Bozor 2","Oraliq 3",
"Navro’z", "Eski Shahar 2"};
// Massiv elementlari ichidan probelleri borini
// chiqarib olish uchun LINQ so'rovi
IEnumerable /**/ QismToplam =
from g
in JoriySuperMarketlar
where g.Contains(" ")
orderby g
select g;
// Natijalarni ekranga chop etish
int i = 0;
foreach (string s in QismToplam)
{
i++;
Console.WriteLine("So'ralgan
massiv elementi {0}: {1}", i, s);
}
}
static void Main(string[] args)
{
Console.WriteLine("***** Ob'yektlarga LINQ
so'rovlarini namoyish etish *****\n");
SatrlarUzraSorov() ;
Console.ReadLine();
}
}
}

Bu dastur bajarilishi natijasi quyidagicha bo’ladi:


Ob'yektlarga LINQ so'rovlarini namoyish etish
So'ralgan massiv elementi 1: Eski Shahar 2
So'ralgan massiv elementi 2: Oraliq 3
So'ralgan massiv elementi 3: Yangi Bozor 2
Bundan ko’rinib turibdiki, amalga oshirilgan LINQ so’rovi natijasida so’rovni qanoatlanttiruvchi massiv elemantlari tartiblangan holda chiqarilmoqda.
Yuqoridagi dasturdagi LINQ so’rovini Lyamda-ifodalarni qo’llagan holda ushbu LINQ so’roviga almashtirish ham mumkin:
IEnumerable /**/ QismToplam =
JoriySuperMarketlar.Where (g => g.Contains (" ")) .OrderBy(g => g).Select (g => g);
Bunda ham dastur natijasi yuqoridagi kabi bo’ladi.


Download 0.77 Mb.

Do'stlaringiz bilan baham:
1   ...   40   41   42   43   44   45   46   47   ...   50




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling