Menu
Coddy logo textTech

Wycinanie fragmentów tablicy, część 2

Część sekcji Podstawy ścieżki Swift w Coddy. Lekcja 74 z 86.

Swift udostępnia wygodną skróconą składnię do wycinania fragmentu tablicy od początku lub do końca. Zamiast jawnie określać 0 lub ostatni indeks, możesz pozostawić jeden koniec zakresu pusty.

Aby wyciąć fragment tablicy od jej początku do określonego indeksu, pomiń wartość początkową:

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

Podobnie, aby wyciąć fragment od określonego indeksu do końca, pomiń wartość końcową:

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

Możesz też użyć wersji z zakresem domkniętym, aby uwzględnić konkretny punkt początkowy:

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

Te jednostronne zakresy sprawiają, że kod jest czytelniejszy, gdy potrzebujesz kilku pierwszych elementów lub wszystkiego po określonym miejscu. Pamiętaj, aby opakować wynik w Array(), jeśli potrzebujesz zwykłej tablicy zamiast ArraySlice.

challenge icon

Wyzwanie

Łatwy
Napisz funkcję splitArray, która przyjmuje numbers i index, a następnie zwraca wszystkie elementy od podanego indeksu do końca tablicy.

Użyj jednostronnego operatora zakresu (...), aby pobrać elementy od określonego indeksu do końca, i zwróć wynik jako zwykłą tablicę.

Parametry:

  • numbers ([Int]): Tablica, z której pobierane są elementy
  • index (Int): Indeks początkowy (włącznie)

Zwraca: Tablicę zawierającą wszystkie elementy od podanego indeksu do końca tablicy ([Int])

Przykład: Jeśli numbers to [5, 10, 15, 20, 25, 30], a index to 3, funkcja powinna zwrócić [20, 25, 30].

Spróbuj swoich sił

func splitArray(numbers: [Int], index: Int) -> [Int] {
    // Wpisz kod tutaj
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Swift