Array-Operatoren
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy — Lektion 71 von 88.
Ruby bietet spezielle Operatoren, mit denen Sie Arrays auf leistungsstarke Weise kombinieren, vergleichen und manipulieren können. Diese Operatoren machen es einfach, mit mehreren Arrays gleichzeitig zu arbeiten.
Der +-Operator verknüpft zwei Arrays zu einem neuen:
a = [1, 2, 3]
b = [4, 5, 6]
combined = a + b
puts combined # Ausgabe: 1, 2, 3, 4, 5, 6Der --Operator entfernt Elemente aus dem ersten Array, die im zweiten vorkommen:
all_numbers = [1, 2, 3, 4, 5]
to_remove = [2, 4]
result = all_numbers - to_remove
puts result # Ausgabe: 1, 3, 5Der &-Operator gibt Elemente zurück, die in beiden Arrays vorkommen (Schnittmenge):
a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
common = a & b
puts common # Ausgabe: 3, 4Der |-Operator kombiniert Arrays und entfernt Duplikate (Vereinigung):
a = [1, 2, 3]
b = [3, 4, 5]
union = a | b
puts union # Ausgabe: 1, 2, 3, 4, 5Alle diese Operatoren erzeugen neue Arrays und lassen die ursprünglichen Arrays unverändert.
Aufgabe
EinfachLies zwei Eingabezeilen ein, die jeweils durch Kommas getrennte Ganzzahlen enthalten:
- Das erste Array (z. B.
1,2,3,4,5) - Das zweite Array (z. B.
3,4,5,6,7)
Führe die folgenden Operationen aus und gib die Ergebnisse aus, jedes in einer eigenen Zeile:
- Gib jedes Element der Verkettung (Concatenation) beider Arrays aus (unter Verwendung von
+) - Gib
---als Trennzeichen aus - Gib jedes Element der Differenz aus (erstes Array minus zweites, unter Verwendung von
-) - Gib
---als Trennzeichen aus - Gib jedes Element der Schnittmenge (Intersection) aus (gemeinsame Elemente, unter Verwendung von
&) - Gib
---als Trennzeichen aus - Gib jedes Element der Vereinigungsmenge (Union) aus (kombiniert ohne Duplikate, unter Verwendung von
|)
Wenn die Eingaben beispielsweise 1,2,3,4,5 und 3,4,5,6,7 sind, sollte die Ausgabe wie folgt aussehen:
1
2
3
4
5
3
4
5
6
7
---
1
2
---
3
4
5
---
1
2
3
4
5
6
7Wenn die Eingaben 10,20,30 und 30,40,50 sind, sollte die Ausgabe wie folgt aussehen:
10
20
30
30
40
50
---
10
20
---
30
---
10
20
30
40
50Wenn die Eingaben 5,10,15 und 1,2,3 sind, sollte die Ausgabe wie folgt aussehen:
5
10
15
1
2
3
---
5
10
15
---
---
5
10
15
1
2
3Spickzettel
Ruby bietet spezielle Operatoren zum Kombinieren, Vergleichen und Manipulieren von Arrays:
Der +-Operator verkettet zwei Arrays:
a = [1, 2, 3]
b = [4, 5, 6]
combined = a + b # [1, 2, 3, 4, 5, 6]Der --Operator entfernt Elemente aus dem ersten Array, die im zweiten vorkommen:
all_numbers = [1, 2, 3, 4, 5]
to_remove = [2, 4]
result = all_numbers - to_remove # [1, 3, 5]Der &-Operator gibt die Schnittmenge (gemeinsame Elemente) zurück:
a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
common = a & b # [3, 4]Der |-Operator gibt die Vereinigungsmenge (kombiniert ohne Duplikate) zurück:
a = [1, 2, 3]
b = [3, 4, 5]
union = a | b # [1, 2, 3, 4, 5]Alle diese Operatoren erstellen neue Arrays und lassen die ursprünglichen Arrays unverändert.
Probier es selbst
# Eingabearrays einlesen
input1 = gets.chomp.split(',').map(&:to_i)
input2 = gets.chomp.split(',').map(&:to_i)
# TODO: Schreiben Sie Ihren Code unten
# Führen Sie die folgenden Operationen aus:
# 1. Verkettung mit +
# 2. Differenz mit -
# 3. Schnittmenge mit &
# 4. Vereinigung mit |
# Geben Sie jedes Ergebnis mit "---" als Trennzeichen zwischen den Operationen ausDiese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 47Rechnungs-Splitter
WillkommensnachrichtBenutzereingaben abfragen10FizzBuzz mit Twist
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array Slicing mit BereichenArray Slicing mit IndizesArray-OperatorenInclude? Methode2Variablen und Datentypen
Zahlen und VariablenDatentyp StringDatentyp BooleanDatentyp SymbolDatentypen prüfenBenennungskonventionenZusammenfassung – Erstellung von Variablen5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachtelte If - Else-AnweisungenUnless-Anweisung8Schleifen
For-Schleife mit RangesWhile-SchleifeBreakNextRückblick - FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick - Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenWiederholung – Einfache MathematikVergleichsoperatoren6Grundlagen Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsChomp-MethodeTypumwandlungWiederholung - AltersrechnerWiederholung - Wahr oder Falsch