القواعد. ضبط
ضبط النوع.
المجموعة هي مجموعة بدون ترتيب. لا يمكن أن تحتوي المجموعة على عناصر مكررة.
لا يوجد تعيين حرفي للاستخدام في إنشاء المجموعات. بدلاً من ذلك، قم بإنشاء مجموعات من
باستخدام List.toSet()
. راجِع القواعد.List.
// Create a set and check its size ['a','b'].toSet().size() == 2
وبالإضافة إلى الطرق المذكورة أدناه، يكون للمجموعات عوامل التشغيل التالية:
المؤثِّر | الاستخدام |
---|---|
x == y |
المقارنة بين المجموعتَين "س" و"ص" |
v in x |
تحقق من وجود القيمة v في المجموعة x. على سبيل المثال: 'a' in ['a','b'].toSet() == true |
الطُرق
الفارق
change() يعرض rules.Set
إرجاع مجموعة تساوي الفرق بين طلب الاتصال المحدد
تم تمرير difference()
والمجموعة إلى difference()
.
أي أن يكون ناتجها مجموعة تحتوي على العناصر الموجودة في
مجموعة مقارنة غير موجودة في المجموعة المحددة.
إذا كانت المجموعات متطابقة، سيتم عرض مجموعة فارغة (size() == 0
).
- المرتجعات
-
non-null rules.Set
مجموعة الفرق التي تحتوي على العناصر الموجودة في مجموعة المقارنة التي لا تنتقل في مجموعة الاتصال.
مثال
['a','b'].toSet().difference(['a','c'].toSet()) == ['b'].toSet()
لهاالكل
hasAll() يعرض rules.Boolean
اختبار ما إذا كانت مجموعة الاستدعاء "hasAll()
" تحتوي على جميع العناصر
في مجموعة المقارنة التي تم تمريرها إلى hasAll()
.
- المرتجعات
-
non-null rules.Boolean
إذا كانت مجموعة الاتصال تحتوي على جميع عناصر مجموعة المقارنة أو القائمة.
مثال
['a','b'].toSet().hasAll(['a','c']) == false
['d','e','f'].toSet().hasAll(['d','e']) == true
يحتوي على أي منها
hasAny() لعرض rules.Boolean.
اختبار ما إذا كانت مجموعة الاستدعاء "hasAny()
" تحتوي على أي من العناصر
في المجموعة أو القائمة التي يتم تمريرها إلى hasAny()
.
- المرتجعات
-
non-null rules.Boolean
ما إذا كانت مجموعة الاتصال تحتوي على أي من العناصر لمجموعة المقارنة أو القائمة.
مثال
['a','b'].toSet().hasAny(['c','d'].toSet()) == false
['a','b'].toSet().hasAny(['a','c'].toSet()) == true
لها فقط
hasOnly() لعرض rules.Boolean.
اختبار ما إذا كان الاستدعاء المحدّد hasOnly()
يحتوي على العناصر فقط
في مجموعة المقارنات أو القائمة التي تم تمريرها إلى hasOnly()
.
- المرتجعات
-
non-null rules.Boolean
إذا كانت مجموعة الاتصال تحتوي على عناصر مجموعة المقارنة أو القائمة.
مثال
['a','b'].toSet().hasOnly(['a','c']) == false
['a','b'].toSet().hasOnly(['a','b']) == true
تقاطع
تقاطع() يؤدي إلى rules.Set
لعرض مجموعة تمثل التقاطع بين استدعاء المجموعة
تم تمرير intersection()
والمجموعة إلى
intersection()
أي، يتم إرجاع مجموعة تحتوي على العناصر
بين المجموعات.
إذا لم يكن هناك عناصر مشتركة بين المجموعات، سيتم عرض مجموعة فارغة
(size() == 0
).
- المرتجعات
-
non-null rules.Set
مجموعة التقاطعات التي تحتوي على العناصر الموجودة في كليهما مجموعة الاتصال ومجموعة المقارنة.
مثال
['a','b'].toSet().intersection(['a','c'].toSet()) == ['a'].toSet()
الحجم
(size()) تعرض rules.Integer
لعرض حجم المجموعة.
- المرتجعات
-
non-null rules.Integer
عدد القيم في المجموعة المحددة.
يونيون
Union() تعرض rules.Set
لعرض مجموعة تمثل اتحاد المجموعة التي تستدعي union()
تم تمرير المجموعة إلى union()
. أي، يتم إرجاع مجموعة تحتوي على
جميع العناصر من كلتا المجموعتين.
- المرتجعات
-
non-null rules.Set
مجموعة اتحادية تحتوي على جميع العناصر في مجموعة الاتصال ومجموعة المقارنة.
مثال
['a','b'].toSet().union(['a','c'].toSet()) == ['a', 'b', 'c'].toSet()