Iterieren über Elemente
Teil des Abschnitts Grundlagen der Swift-Journey von Coddy — Lektion 69 von 86.
Da Sie nun wissen, wie man Arrays erstellt und ändert, lassen Sie uns untersuchen, wie man jedes Element nacheinander verarbeitet. Die for-in-Schleife macht dies unglaublich einfach.
Wenn du eine for-in-Schleife mit einem Array verwendest, gibt Swift dir automatisch jedes Element der Reihe nach:
let fruits = ["Apple", "Banana", "Cherry"]
for fruit in fruits {
print(fruit)
}
// Apple
// Banana
// CherryDie Variable fruit nimmt bei jeder Iteration nacheinander jeden Wert aus dem Array an. Sie können diese Variable beliebig benennen, solange es für Ihre Daten sinnvoll ist.
Dieses Muster ist perfekt, um Operationen auf jedem Element auszuführen, wie zum Beispiel das Berechnen einer Gesamtsumme:
let prices = [9.99, 14.50, 3.25]
var total = 0.0
for price in prices {
total += price
}
print(total) // 27.74Du kannst die Schleife auch verwenden, um neue Arrays basierend auf bestehenden zu erstellen:
let numbers = [1, 2, 3, 4]
var doubled = [Int]()
for number in numbers {
doubled.append(number * 2)
}
print(doubled) // [2, 4, 6, 8]Das Iterieren über Arrays ist eine der häufigsten Operationen in der Programmierung, daher wird es Ihnen gute Dienste leisten, dieses Muster zu beherrschen.
Aufgabe
EinfachSchreibe eine Funktion countPositives, die numbers entgegennimmt und die Anzahl der positiven Zahlen im Array zurückgibt.
Verwende eine for-in-Schleife, um jedes Element zu durchlaufen und zu zählen, wie viele größer als Null sind.
Parameter:
numbers([Int]): Ein Array von Ganzzahlen
Rückgabewert: Die Anzahl der positiven Zahlen (größer als 0) im Array (Int)
Beispiel: Wenn numbers gleich [-3, 5, 0, 8, -1, 12] ist, sollte die Funktion 3 zurückgeben (die positiven Zahlen sind 5, 8 und 12).
Spickzettel
Verwenden Sie eine for-in-Schleife, um jedes Element eines Arrays zu durchlaufen:
let fruits = ["Apple", "Banana", "Cherry"]
for fruit in fruits {
print(fruit)
}
// Apple
// Banana
// CherryDie Schleifenvariable (fruit in diesem Beispiel) nimmt bei jeder Iteration jeden Wert aus dem Array an.
Sie können for-in-Schleifen verwenden, um Summen zu berechnen:
let prices = [9.99, 14.50, 3.25]
var total = 0.0
for price in prices {
total += price
}
print(total) // 27.74Sie können auch neue Arrays erstellen, indem Sie über bestehende iterieren:
let numbers = [1, 2, 3, 4]
var doubled = [Int]()
for number in numbers {
doubled.append(number * 2)
}
print(doubled) // [2, 4, 6, 8]Probier es selbst
func countPositives(numbers: [Int]) -> Int {
// 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 Eingabe