Anasayfa / Bilgisayar Mühendisliği / C# Lambda Expressions kullanımı

C# Lambda Expressions kullanımı

Merhaba,

Bu yazımda Lambda Expressions hakkında biraz bilgi vermeye çalışacağım. Lambda Expressions genelde basit işlermler yapmak için kullanılır ve LINQ sorgularının yazılımını kolaylaştırır.

n=>n*n;

Sol tarafta parametre bildirimini, lambda operatöründen (=>) sonra ifadeyi veya kod bloğunu sağ tarafa yazın.

Örnek;

using System;
using System.Collections.Generic;
using System.Linq;

namespace Lambda_Ifadeleri
{
 class Program
 {
 // iki tam sayı parametresi alan delegete tanımlayalım
 delegate int TamsayiIslevi(int sayi1, int sayi2);
 static void Main(string[] args)
 {
 
 TamsayiIslevi tsiTopla = (x, y) => x + y;
 
 TamsayiIslevi tsiCikar = (x, y) => x - y;
 
 Console.WriteLine(tsiTopla(19, 9));
 Console.WriteLine(tsiCikar(19,9));
 Console.ReadKey();
 }
 }
}

Şimdi de LINQ sorgularının lambda ifadeleriyle nasıl yazıldığına bakalım. LINQ sorgularını lambda ifadelerini kullanarak tek seferde yazmak mümkündür. Okunaklı bir kod yazımı sağlamış oluruz.

 

Örnek :

public class Employee
{
 public int id { get; set; }
 public string Name { get; set; }
 public double Salary { get; set; }
 
 public override string ToString()
 {
 return string.Format("Name = {0}, Salary = {1}",Name, Salary);
 }
}

//Employee tipin de listemizi oluşturalım.

List<Employee> Employees = new List<Employee>
 {
 new Employee{ id=1, Salary=1500, Name="Emre" },
 new Employee{ id=2, Salary=2000, Name="Ahmet" },
 new Employee{ id=3, Salary=3000, Name="Ali" },

};

//Maaşı 1750'den küçük olan çalışanları alfabetik sırayla gösterelim.

//LINQ sorgusu
var linq = from c in Employees
           where c.Salary < 1750
           orderby c.Name
           select c;

//Lambda Expression sorgusu
var lambda = Employees.Where(i => i.Salary < 1750).OrderBy(i => i.Name);

Örnekler bu şekilde çoğaltılabilir. Lambda Expression hakkında aktaracaklarım bu kadar umarım yararlı olur. İyi çalışmalar.

Hakkında Ali Demirci

Ben Ali Demirci... 1991 Ankara doğumluyum. Ankara da yaşıyorum. Fırsat buldukça öğrendiklerimi burada paylaşıyorum. Java ile haşır neşirim. Android'den asla vazgeçemem. Öğrenmeye bayılırım. Yeni şeyler öğrendiğimde, geçmişteki projelerimde keşke böyle yapsaydım diye çok üzülmüşümdür. O yüzden öğrenmekten korkmayın. Takıldığınız yerleri mutlaka sorun. Biliyorsam yanıt veririm. Bilmiyorsam yol gösteririm. Teşekkürler :)

Kontrol Et

Regex Nedir? Nasıl Kullanılır?

Regex(Regular Expression) yani düzenli ifadeler, metinlerde aranan bir tümceyi kolayca bulmamızı sağlayan bir çeşit algoritmadır. Yani …

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir