عمليات تعيين HashSet و LINQ
يقارن هذا الموضوع عمليات HashSet<T> عمليات وعمليات تعيين operations and Language-Integrated Query (LINQ).
عمليات تعيين LINQ
يوفر LINQ لبعض عمليات التعيين الوصول إلى أي مصدر بيانات يقوم بتنفيذ الواجهات IEnumerable أو IQueryable. وهذا يتضمن الصفائف والمجموعات.
عمليات تعيين التي يوفرها LINQ هي كما يلي:
التمييز
اتحاد
التقاطع
الاستثناء
لمزيد من المعلومات حول LINQ ، راجع مكون Language-Integrated Query (LINQ) and LINQ متوازي (PLINQ). للحصول على مزيد من المعلومات حول عمليات تعيين LINQ, راجع تعيين عمليات.
عند استخدام HashSet<T>
الفرق الأساسي بين العمليات التعيين LINQ HashSet<T>العمليات هو أن العمليات التعيين LINQ دائماً العودة جديد IEnumerable<T>التعيين، بينما HashSet<T>تعديل وظائف مكافئة في الالتعيين الحالي. HashSet<T>يوفر بقعة صغيرة وأقوى التعيين من التعيين العمليات. على سبيل المثال،يوفر HashSet<T> مقارنات مثل IsSubsetOf و IsSupersetOf.
بشكل عام، إذا كان من الواجب أن تقوم بإنشاء مجموعة جديدة أو أن التطبيق الخاص بك يحتاج للوصول فقط إلى عمليات التعيين المتوفرة، فاستخدام عمليات تعيين LINQ على أي مجموعة IEnumerable<T> أو صفيف سيكون كافياً. ومع ذلك، إذا كان التطبيق الخاص بك يتطلب الوصول إلى عمليات تعيين إضافية أو كان غير مرغوب أو الضروري إنشاء مجموعة جديدة ، فاستخدم الفئة HashSet<T>.
عمليات تعيين HashSet<T> و LINQ
يعرض الجدول التالي عمليات HashSet<T> والمكافئات لهم من عمليات تعيين LINQ.
العملية HashSet (من T) |
المكافئ في LINQ |
---|---|
غير متوفرة |
|
غير متوفرة |
|
غير متوفرة |
|
غير متوفرة |
|
غير متوفرة |
|
غير متوفرة |
|
غير متوفرة |
|
غير متوفرة |