LINQ Intersect Method
LINQ Intersect Method
دالة Intersect()
في LINQ تُستخدم للحصول على **العناصر المشتركة بين تسلسلين (Collections)**.
يعني ترجع القيم اللي موجودة في المجموعتين فقط.
✅ مثال باستخدام Method Syntax:
List<int> list1 = new List<int>() { 1, 2, 3, 4, 5 };
List<int> list2 = new List<int>() { 3, 5, 6, 7 };
var result = list1.Intersect(list2);
foreach (var item in result)
{
Console.Write(item + " ");
}
📌 النتيجة: 3 5
✅ مثال باستخدام Query Syntax:
var result = (from item in list1
select item).Intersect(list2);
foreach (var item in result)
{
Console.Write(item + " ");
}
💡 خصائص مهمة:
- ترجع العناصر المشتركة فقط.
- تُزيل التكرارات: كل قيمة مشتركة تظهر مرة واحدة بس.
- تستخدم Default Equality Comparer.
- تدعم التنفيذ المؤجل (Deferred Execution).
🛠️ متى تستخدم Intersect؟
- لما يكون عندك قائمتين وعايز تشوف العناصر اللي في الاتنين.
- في حالات التحقق أو التقارير اللي بتقارن بيانات من مصدرين.
- عند تصفية مجموعة بناءً على عناصر مجموعة أخرى.
🧠 ملاحظات:
- لو واحدة من القائمتين فاضية → النتيجة هتكون فاضية.
- لو فيه تكرار في القائمتين → النتيجة بتشمل القيمة مرة واحدة فقط.
تعليقات
إرسال تعليق