Arrays modifizieren
Teil des Abschnitts Grundlagen der Swift-Journey von Coddy — Lektion 64 von 86.
Arrays werden erst dann richtig nützlich, wenn man ihren Inhalt ändern kann. Um ein Array zu ändern, müssen Sie es mit var anstelle von let deklarieren.
Sie können ein vorhandenes Element ändern, indem Sie einem bestimmten Index einen neuen Wert zuweisen:
var colors = ["Red", "Green", "Blue"]
colors[1] = "Yellow"
print(colors) // ["Red", "Yellow", "Blue"]Um neue Elemente hinzuzufügen, verwenden Sie die append-Methode für ein einzelnes Element oder den +=-Operator, um mehrere Elemente gleichzeitig hinzuzufügen:
var numbers = [1, 2, 3]
numbers.append(4)
print(numbers) // [1, 2, 3, 4]
numbers += [5, 6]
print(numbers) // [1, 2, 3, 4, 5, 6]Um ein Element an einer bestimmten Position einzufügen, verwenden Sie die insert-Methode:
var fruits = ["Apple", "Orange"]
fruits.insert("Banana", at: 1)
print(fruits) // ["Apple", "Banana", "Orange"]Um Elemente zu entfernen, verwenden Sie remove(at:) mit dem Index, den Sie löschen möchten:
var items = ["A", "B", "C", "D"]
items.remove(at: 2)
print(items) // ["A", "B", "D"]Denken Sie daran: Wenn Sie ein Element entfernen, rücken alle nachfolgenden Elemente nach, um die Lücke zu füllen.
Aufgabe
EinfachSchreiben Sie eine Funktion modifyInventory, die ein Array von Elementen, ein neues hinzuzufügendes Element und einen zu entfernenden Index entgegennimmt und dann das geänderte Array zurückgibt.
Führen Sie die folgenden Operationen in der angegebenen Reihenfolge aus:
- Ändern Sie das erste Element in
"Updated" - Hängen Sie das neue Element an das Ende des Arrays an
- Entfernen Sie das Element an dem angegebenen Index
Parameter:
items([String]): Das ursprüngliche Array von ElementennewItem(String): Das anzuhängende ElementremoveIndex(Int): Der Index des zu entfernenden Elements (nach dem Anhängen)
Rückgabewert: Das geänderte Array nach allen Operationen ([String])
Beispiel: Wenn items gleich ["A", "B", "C"] ist, newItem gleich "D" ist und removeIndex gleich 2 ist, sollte die Funktion Folgendes tun:
- Erstes Element ändern:
["Updated", "B", "C"] - "D" anhängen:
["Updated", "B", "C", "D"] - An Index 2 entfernen:
["Updated", "B", "D"]
Spickzettel
Arrays, die mit var deklariert wurden, können geändert werden, während Arrays, die mit let deklariert wurden, unveränderlich sind.
Ändern Sie ein Element, indem Sie einem bestimmten Index einen neuen Wert zuweisen:
var colors = ["Red", "Green", "Blue"]
colors[1] = "Yellow" // ["Red", "Yellow", "Blue"]Fügen Sie ein einzelnes Element mit append hinzu:
var numbers = [1, 2, 3]
numbers.append(4) // [1, 2, 3, 4]Fügen Sie mehrere Elemente mit += hinzu:
numbers += [5, 6] // [1, 2, 3, 4, 5, 6]Fügen Sie ein Element an einer bestimmten Position mit insert(_:at:) ein:
var fruits = ["Apple", "Orange"]
fruits.insert("Banana", at: 1) // ["Apple", "Banana", "Orange"]Entfernen Sie ein Element an einem bestimmten Index mit remove(at:):
var items = ["A", "B", "C", "D"]
items.remove(at: 2) // ["A", "B", "D"]Wenn ein Element entfernt wird, rücken alle nachfolgenden Elemente nach, um die Lücke zu füllen.
Probier es selbst
func modifyInventory(items: [String], newItem: String, removeIndex: Int) -> [String] {
// Schreibe hier den Code
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorZusammengesetzte ZuweisungWiederholung - Einfache MathematikVergleichsoperatoren7Grundlagen der Ein- und Ausgabe
Print-FunktionString-InterpolationReadLine-EingabeTypumwandlungWiederholung - Bis 120Wiederholung - Wahr oder Falsch10Funktionen
Eine Funktion deklarierenParameter und ArgumenteRückgabewerteArgument-LabelsWiederholung - Sigma-FunktionWiederholung - ValidierungsfunktionStandardwerte13Iterieren über Sequenzen
Iterieren über ElementeDie enumerate-MethodeIterieren über Strings Teil 1Iterieren über Strings Teil 22Variablen
Let vs. VarTyp-AnnotationenZahlenStringsBooleansBenennungskonventionenZusammenfassung – Variablen initialisieren5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Ternärer Operator8Rechnungs-Splitter
WillkommensnachrichtEingabe abfragen14Arrays für Fortgeschrittene
Array Slicing Teil 1Array Slicing Teil 2Sequenz-OperatorenDie Contains-Methode3Optionals
Was sind OptionalsUnwrapping mit If LetGuard LetNil-Coalescing-OperatorZusammenfassung – Sicheres Unwrapping6Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerSwitch-AnweisungSwitch mit Wertebereichen9Schleifen
For-In-SchleifeWhile-SchleifeRepeat-While-SchleifeBreakContinueWiederholung – FakultätBereiche in SchleifenVerschachtelte SchleifeWiederholung – Dynamische Eingabe12Array-Grundlagen
Ein Array deklarierenZugriff auf ElementeArrays modifizierenArray-MethodenWiederholung - ProduktlisteWiederholung - Umgekehrtes ArrayTupel