Single | Engin Polat\'ın Windows 8 , Windows Phone 8 ve C# içerikli programcılık sitesi

Arşiv

Etiketlenen yazılar single

C# ile LINQ filtrelerinin üç farklı kullanımı (Predicate Function, Anonymous Method, Lambda Expression)

23 May 2011 Yorum yapılmamış

Listeler (IEnumerable<T> interface’ini implemente eden) üzerinde filtreleme yapmak için .Net 3.0’dan beri LINQ sorgularını kullanabiliyoruz.

LINQ ile gelen farklı operatör grupları sayesinde, listeler üzerinde sadece filtreleme yapmanın ötesinde bir kontrolümüz oluyor (daha detaylı bilgi için MSDN’de yeralan The .Net Standard Query Operators makalesini okuyabilirsiniz);

Bu yazımda, bir liste uzerinde LINQ sorgusu gerçekleştirmenin 3 farklı yolunu inceleyeceğiz;

  • Predicate
  • Anonymous Method
  • Lambda Sorgusu

Öncelikle üzerinde çalışacağımız bir listeye ihtiyacımız olacak, Enumerable sınıfının static Range method’u ile iki değer aralığındaki tam sayılardan oluşan listeyi kullanabiliriz;

Enumerable.Range(50, 100);

Predicate

private static bool CiftSayiKontrol(int Rakam)
{
	if (Rakam % 2 == 0)
		return true;
	else
		return false;
}

public static void Main(string[] args)
{
	var SonucListe = Enumerable.Range(1, 20).Where(CiftSayiKontrol);
	foreach (var Rakam in SonucListe)
	{
		Console.WriteLine(Rakam);
	}

	Console.ReadLine();
}

Sonuç;

LINQ Sorgusu - Predicate Function

Anonymous Method

public static void Main(string[] args)
{
	var SonucListe = Enumerable.Range(1, 20).Where(delegate(int number) {
		if (number % 2 == 0)
			return true;
		else
			return false;
	});

	foreach (var Rakam in SonucListe)
	{
		Console.WriteLine(Rakam);
	}

	Console.ReadLine();
}

LINQ Sorgusu - Anonymous Method

Lambda Sorgusu

public static void Main(string[] args)
{
	var SonucListe = Enumerable.Range(1, 20).Where(Rakam => Rakam % 2 == 0);
	foreach (var Rakam in SonucListe)
	{
		Console.WriteLine(Rakam);
	}

	Console.ReadLine();
}

LINQ Sorgusu - Lambda Expression

C# Veri Tipleri

27 July 2010 1 yorum

Uygulamalarımızın olmazsa olmaz unsurları herhalde değişkenlerdir. Orta ölçekli bir uygulamada, kabaca bir tahminle yüzlerce değişken tanımlıyoruzdur.

Kullanım yoğunluğuna bakarak, oluşturduğumuz değişkenlerin tiplerinin doğru belirlenmesinin ne kadar önemli olduğunu anlayabiliriz.

C# ile kullanabileceğimiz değişkenlerin en önemlilerini aşağıda listeledim;

Veri Tipi Kapladığı Alan Değer Aralığı
Tam Sayı Veri Tipleri
sbyte 1 byte -128 ve +127
byte 1 byte 0 ve +255
short 2 byte -32768 ve +32767
ushort 2 byte 0 ve 65535
int 4 byte -2.147.483.648 ve +2.147.483.647
uint 4 byte 0 ve 4.294.967.295
long 8 byte -9.223.372.036.854.775.808 ve +9.223.372.036.854.775.807
ulong 8 byte 0 ve 18,446,744,073,709,551,615
Noktalı Sayı Veri Tipleri
single 4 byte -3.402823E38 ve +3.402823E38
double 8 byte -1.79769313486232E308 ve +1.79769313486232E308
decimal 16 byte -7.9E1028 ve +7.9E1028
Diğer Veri Tipleri
char 2 byte Tek Karakter
string ~ (2 byte x harf adedi) Karakter Dizisi
bool 4 byte True veya False
DateTime 8 byte 1/1/0001 12:00:00 ve 31/12/9999 23:59:59