C# Select Kullanımı
"Select" metodu C#'da LINQ (Language Integrated Query) kütüphanesinin bir parçasıdır ve IEnumerable
"Select" metodu, bir lambda ifadesi alır. Bu lambda ifadesi, her eleman için belirli bir değeri döndürür. "Select" metodu, bu değerleri yeni bir veri kümesi olarak döndürmektedir.
Aşağıda "Select" metodunun kullanımı için bazı örnekler verilmiştir:
1 - Bir dizideki sayıların karesini almak: Aşağıdaki kod parçacığı bir dizideki sayıların karesini alır:
int[] numbers = { 1, 2, 3, 4, 5 };
var squares = numbers.Select(n => n * n);
2 - Bir sözlükteki kayıtların anahtar ve değerlerini bir nesne olarak döndürmek: Aşağıdaki kod parçacığı bir sözlükteki kayıtların anahtar ve değerlerini bir nesne olarak döndürür:
Dictionary ages = new Dictionary()
{
{"John", 22},
{"Jane", 25},
{"James", 30}
};
var nameAgePairs = ages.Select(a => new { Name = a.Key, Age = a.Value });
3 - Bir dizideki nesnelerin belirli bir özelliğini almak: Aşağıdaki kod parçacığı bir dizideki nesnelerin isimlerini alır. Örneğin, kullanıcıların isimlerini almak için:
List users = new List {
new User { Name = "John", Age = 22 },
new User { Name = "Jane", Age = 25 },
new User { Name = "James", Age = 30 },
new User { Name = "Jessica", Age = 35 }
};
var names = users.Select(u => u.Name);
4 - Bir liste içinde kelime uzunluklarını almak: Aşağıdaki kod parçacığı bir liste içinde kelime uzunluklarını alır:
List fruits = new List { "apple", "banana", "cherry", "date", "elderberry" };
var wordLengths = fruits.Select(f => f.Length);
5 - Bir dizideki nesnelerin belirli bir özelliğini kullanarak yeni bir nesne oluşturmak: Aşağıdaki kod parçacığı bir dizideki nesnelerin belirli bir özelliğini kullanarak yeni bir nesne oluşturur. Örneğin, kullanıcıların isimlerini ve yaşlarını kullanarak yeni bir nesne oluşturmak için:
List users = new List {
new User { Name = "John", Age = 22 },
new User { Name = "Jane", Age = 25 },
new User { Name = "James", Age = 30 },
new User { Name = "Jessica", Age = 35 }
};
var newObjects = users.Select(u => new { Name = u.Name, Age = u.Age });
6 - Bir sorgu sonucunu projekt etmek: Aşağıdaki kod parçacığı bir sorgu sonucunu projekt eder ve sadece kelime uzunluklarını döndürür:
string[] words = { "apple", "banana", "cherry", "date", "elderberry" };
var wordLengths = from w in words select w.Length;
"Select" metodu, veri kümelerinde projekleme işlemleri gerçekleştirmek için çok yararlı bir araçtır. Bu metod, lambda ifadelerini kullanarak elemanların belirli bir özelliğini almak veya yeni nesneler oluşturmak için kullanılabilir. Ayrıca, "Select" metodu sorguların sonuçlarını da projekt etmek için kullanılabilir. Bu metod, sorgu sonuçlarını daha sonra kullanmak için daha uygun hale getirir.