Ruby bietet verschiedene Möglichkeiten, Arrays zu kombinieren, jede mit ihren eigenen Eigenschaften. Dieser Leitfaden untersucht die gängigsten und effizientesten Methoden und liefert Beispiele, um ihr Verhalten zu veranschaulichen.
Inhaltsverzeichnis
- Arrays mit
concat
zusammenführen - Arrays mit dem
+
-Operator zusammenführen - Arrays mit
push
und dem Splat-Operator zusammenführen - Arrays mit
append
zusammenführen - Arrays mit
union
zusammenführen - Arrays mit dem
|
-Operator zusammenführen - Fazit
1. Arrays mit concat
zusammenführen
Die Methode concat
modifiziert das ursprüngliche Array, indem sie die Elemente eines anderen Arrays an dessen Ende anfügt. Es ist eine In-place-Operation, die das aufgerufene Array direkt verändert.
array1 = [1, 2, 3]
array2 = [4, 5, 6]
array1.concat(array2)
puts array1 # Ausgabe: [1, 2, 3, 4, 5, 6]
puts array2 # Ausgabe: [4, 5, 6] (array2 bleibt unverändert)
2. Arrays mit dem +
-Operator zusammenführen
Der +
-Operator erstellt ein neues Array, das alle Elemente beider Arrays enthält. Die ursprünglichen Arrays bleiben unverändert.
array1 = [1, 2, 3]
array2 = [4, 5, 6]
merged_array = array1 + array2
puts merged_array # Ausgabe: [1, 2, 3, 4, 5, 6]
puts array1 # Ausgabe: [1, 2, 3] (array1 bleibt unverändert)
puts array2 # Ausgabe: [4, 5, 6] (array2 bleibt unverändert)
3. Arrays mit push
und dem Splat-Operator zusammenführen
Die Methode push
fügt Elemente am Ende eines Arrays hinzu. Der Splat-Operator (*
) entpackt ein anderes Array, sodass Sie alle seine Elemente auf einmal hinzufügen können. Dies modifiziert, wie concat
, das ursprüngliche Array.
array1 = [1, 2, 3]
array2 = [4, 5, 6]
array1.push(*array2)
puts array1 # Ausgabe: [1, 2, 3, 4, 5, 6]
puts array2 # Ausgabe: [4, 5, 6] (array2 bleibt unverändert)
4. Arrays mit append
zusammenführen
Die Methode append
ist ein Synonym für push
; sie funktionieren identisch.
array1 = [1, 2, 3]
array2 = [4, 5, 6]
array1.append(*array2)
puts array1 # Ausgabe: [1, 2, 3, 4, 5, 6]
puts array2 # Ausgabe: [4, 5, 6] (array2 bleibt unverändert)
5. Arrays mit union
zusammenführen
Die Methode union
(oder ihr Alias, der |
-Operator) gibt ein neues Array zurück, das nur die eindeutigen Elemente beider Eingabe-Arrays enthält. Duplikate werden entfernt.
array1 = [1, 2, 3, 3]
array2 = [3, 4, 5]
merged_array = array1.union(array2)
puts merged_array # Ausgabe: [1, 2, 3, 4, 5]
puts array1 # Ausgabe: [1, 2, 3, 3] (array1 bleibt unverändert)
puts array2 # Ausgabe: [3, 4, 5] (array2 bleibt unverändert)
6. Arrays mit dem |
-Operator zusammenführen
Dies ist eine Kurzschreibweise für die Methode union
und liefert das gleiche Ergebnis.
array1 = [1, 2, 3, 3]
array2 = [3, 4, 5]
merged_array = array1 | array2
puts merged_array # Ausgabe: [1, 2, 3, 4, 5]
puts array1 # Ausgabe: [1, 2, 3, 3] (array1 bleibt unverändert)
puts array2 # Ausgabe: [3, 4, 5] (array2 bleibt unverändert)
7. Fazit
Ruby bietet verschiedene Methoden zum Zusammenführen von Arrays, sodass Sie den optimalen Ansatz je nach Bedarf auswählen können. Überlegen Sie, ob eine In-place-Modifikation oder ein neues Array benötigt wird und ob doppelte Elemente beibehalten werden sollen. Zum Erstellen neuer Arrays bieten der +
-Operator und die Methode union
im Allgemeinen eine bessere Lesbarkeit. concat
und push
sind effizient, um Arrays direkt zu modifizieren. Das Verständnis dieser Nuancen sorgt für klaren und effizienten Ruby-Code.