ElementAt و ElementAtOrDefault في LINQ
LINQ ElementAt و ElementAtOrDefault
في هذا الدرس، سنتعلّم كيف نستخدم دالتي ElementAt
و ElementAtOrDefault
في LINQ، والمواقف المناسبة لاستخدام كلٍ منهما.
ما الفرق بين ElementAt و ElementAtOrDefault؟
الدالة | تُعيد عنصر بناءً على الفهرس؟ | لو الفهرس غير موجود | النتيجة |
---|---|---|---|
ElementAt(index) |
✅ | ❌ | Exception |
ElementAtOrDefault(index) |
✅ | ✅ | default للقيمة |
مثال عملي:
List<string> names = new List<string>() { "Mahmoud", "Alaa", "Sara", "Noor" };
// ElementAt - فهرس صحيح
string name1 = names.ElementAt(2); // "Sara"
Console.WriteLine(name1);
// ElementAtOrDefault - فهرس غير موجود
string name2 = names.ElementAtOrDefault(10); // null
Console.WriteLine(name2 ?? "Not Found");
مثال باستخدام قائمة أرقام:
List<int> numbers = new List<int>() { 10, 20, 30, 40 };
Console.WriteLine(numbers.ElementAt(1)); // 20
Console.WriteLine(numbers.ElementAtOrDefault(10)); // 0
متى تستخدم كل واحدة؟
- ✅ استخدم
ElementAt()
لو متأكد إن الفهرس موجود. - ✅ استخدم
ElementAtOrDefault()
لو فيه احتمال الفهرس يكون أكبر من حجم القائمة، وعايز تتجنب الاستثناء.
تعليقات
إرسال تعليق