Regeln . Satz
Typ festlegen.
Eine Menge ist eine ungeordnete Sammlung. Ein Set darf keine doppelten Artikel enthalten.
Es gibt kein Mengenliteral zur Verwendung beim Erstellen von Mengen. Erstellen Sie stattdessen Sätze aus Listen mit List.toSet()
. Siehe Rules.List .
// Create a set and check its size ['a','b'].toSet().size() == 2
Zusätzlich zu den unten aufgeführten Methoden verfügen Mengen über die folgenden Operatoren:
Operator | Verwendung |
---|---|
x == y | Vergleichen Sie die Mengen x und y |
v in x | Überprüfen Sie, ob der Wert v in der Menge x vorhanden ist. Zum Beispiel: 'a' in ['a','b'].toSet() == true |
Methoden
Unterschied
„different()“ gibt „rules.Set“ zurück
Gibt eine Menge zurück, die die Differenz zwischen der Menge, die difference()
aufruft, und der Menge, die an difference()
übergeben wird, darstellt. Das heißt, es wird ein Satz zurückgegeben, der die Elemente im Vergleichssatz enthält, die nicht im angegebenen Satz enthalten sind.
Wenn die Mengen identisch sind, wird eine leere Menge zurückgegeben ( size() == 0
).
- Kehrt zurück
non-null rules.Set
Satzdifferenzsatz, der die im Vergleichssatz gefundenen Elemente enthält, die nicht im aufrufenden Satz enthalten sind.
Beispiel
['a','b'].toSet().difference(['a','c'].toSet()) == ['b'].toSet()
hasAll
hasAll() gibt Rules.Boolean zurück
Testen Sie, ob die Menge, die hasAll()
aufruft, alle Elemente in der an hasAll()
übergebenen Vergleichsmenge enthält.
- Kehrt zurück
non-null rules.Boolean
, ob der aufrufende Satz alle Elemente des Vergleichssatzes oder der Vergleichsliste enthält.
Beispiel
['a','b'].toSet().hasAll(['a','c']) == false
['d','e','f'].toSet().hasAll(['d','e']) == true
hasAny
hasAny() gibt Rules.Boolean zurück
Testen Sie, ob die Menge, die hasAny()
aufruft, eines der Elemente in der Menge oder Liste enthält, die an hasAny()
übergeben wurde.
- Kehrt zurück
non-null rules.Boolean
, ob der aufrufende Satz eines der Elemente des Vergleichssatzes oder der Vergleichsliste enthält.
Beispiel
['a','b'].toSet().hasAny(['c','d'].toSet()) == false
['a','b'].toSet().hasAny(['a','c'].toSet()) == true
hat nur
hasOnly() gibt Rules.Boolean zurück
Testen Sie, ob der Satz hasOnly()
aufruft, nur die Elemente im Vergleichssatz oder in der an hasOnly()
übergebenen Vergleichsliste enthält.
- Kehrt zurück
non-null rules.Boolean
, ob der aufrufende Satz nur die Elemente des Vergleichssatzes oder der Vergleichsliste enthält.
Beispiel
['a','b'].toSet().hasOnly(['a','c']) == false
['a','b'].toSet().hasOnly(['a','b']) == true
Überschneidung
Kreuzung() gibt Rules.Set zurück
Gibt eine Menge zurück, die die Schnittmenge zwischen der Menge, intersection()
aufruft, und der Menge darstellt, die an intersection()
übergeben wird. Das heißt, es wird eine Menge zurückgegeben, die die Elemente enthält, die die Mengen gemeinsam haben.
Wenn die Mengen keine gemeinsamen Elemente haben, wird eine leere Menge zurückgegeben ( size() == 0
).
- Kehrt zurück
non-null rules.Set
Stellen Sie eine Schnittmenge ein, die die Elemente enthält, die sowohl in der aufrufenden Menge als auch in der Vergleichsmenge gefunden wurden.
Beispiel
['a','b'].toSet().intersection(['a','c'].toSet()) == ['a'].toSet()
Größe
size() gibt Rules.Integer zurück
Gibt die Größe der Menge zurück.
- Kehrt zurück
non-null rules.Integer
Zahl der Werte im angegebenen Satz.
Union
union() gibt Rules.Set zurück
Gibt eine Menge zurück, die die Vereinigung der Menge ist, die union()
aufruft, und der Menge, die an union()
übergeben wurde. Das heißt, es wird eine Menge zurückgegeben, die alle Elemente aus beiden Mengen enthält.
- Kehrt zurück
non-null rules.Set
Union-Set, das alle Elemente sowohl im aufrufenden Set als auch im Vergleichsset enthält.
Beispiel
['a','b'].toSet().union(['a','c'].toSet()) == ['a', 'b', 'c'].toSet()