Menu
Coddy logo textTech

Array Slicing Teil 2

Teil des Abschnitts Grundlagen der Swift-Journey von Coddy — Lektion 74 von 86.

Swift bietet eine praktische Kurzschreibweise für das Slicing vom Anfang oder bis zum Ende eines Arrays. Anstatt 0 oder den letzten Index explizit anzugeben, können Sie eine Seite des Bereichs leer lassen.

Um vom Anfang eines Arrays bis zu einem bestimmten Index zu slicen, lassen Sie den Startwert weg:

let numbers = [10, 20, 30, 40, 50]
let firstThree = numbers[..<3]
print(firstThree)  // [10, 20, 30]

Um von einem bestimmten Index bis zum Ende zu slicen, lassen Sie den Endwert ebenso weg:

let numbers = [10, 20, 30, 40, 50]
let fromIndex2 = numbers[2...]
print(fromIndex2)  // [30, 40, 50]

Sie können auch die Version mit geschlossenem Bereich verwenden, um einen spezifischen Startpunkt einzuschließen:

let letters = ["a", "b", "c", "d", "e"]
let upToIndex3 = letters[...3]
print(upToIndex3)  // ["a", "b", "c", "d"]

Diese einseitigen Bereiche machen Ihren Code sauberer, wenn Sie die ersten paar Elemente oder alles nach einem bestimmten Punkt benötigen. Denken Sie daran, das Ergebnis in Array() einzuschließen, wenn Sie ein reguläres Array anstelle eines ArraySlice benötigen.

challenge icon

Aufgabe

Einfach

Schreibe eine Funktion splitArray, die numbers und index entgegennimmt und alle Elemente vom angegebenen Index bis zum Ende des Arrays zurückgibt.

Verwende den einseitigen Range-Operator (...), um vom angegebenen Index bis zum Ende zu slicen, und gib das Ergebnis als reguläres Array zurück.

Parameter:

  • numbers ([Int]): Das zu slicende Array
  • index (Int): Der Startindex (inklusiv)

Rückgabewert: Ein Array, das alle Elemente vom angegebenen Index bis zum Ende des Arrays enthält ([Int])

Beispiel: Wenn numbers gleich [5, 10, 15, 20, 25, 30] ist und index gleich 3 ist, sollte die Funktion [20, 25, 30] zurückgeben.

Spickzettel

Swift bietet eine Kurzschreibweise für das Slicing von Arrays vom Anfang oder bis zum Ende an, indem eine Seite des Bereichs leer gelassen wird.

Um vom Anfang bis zu einem bestimmten Index zu slicen, lassen Sie den Startwert weg:

let numbers = [10, 20, 30, 40, 50]
let firstThree = numbers[..<3]  // [10, 20, 30]

Um von einem bestimmten Index bis zum Ende zu slicen, lassen Sie den Endwert weg:

let numbers = [10, 20, 30, 40, 50]
let fromIndex2 = numbers[2...]  // [30, 40, 50]

Verwenden Sie die Version mit geschlossenem Bereich, um einen bestimmten Endindex einzuschließen:

let letters = ["a", "b", "c", "d", "e"]
let upToIndex3 = letters[...3]  // ["a", "b", "c", "d"]

Einseitige Bereiche geben ein ArraySlice zurück. Umschließen Sie das Ergebnis mit Array(), um es in ein reguläres Array umzuwandeln:

let regularArray = Array(numbers[2...])

Probier es selbst

func splitArray(numbers: [Int], index: Int) -> [Int] {
    // Schreibe hier den Code
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen