Menu
Coddy logo textTech

Wycinanie fragmentów tablicy, część 1

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

Czasami nie potrzebujesz całej tablicy, a jedynie jej fragmentu. Swift ułatwia wyodrębnianie podzbioru elementów za pomocą wycinania fragmentu tablicy przy użyciu operatorów zakresu.

Aby uzyskać wycinek, użyj zakresu wewnątrz nawiasów indeksowania. Najczęściej stosowane podejście wykorzystuje operator zakresu półotwartego (..<), który uwzględnia indeks początkowy, ale wyklucza indeks końcowy:

let numbers = [10, 20, 30, 40, 50]
let slice = numbers[1..<4]
print(slice)  // [20, 30, 40]

Tutaj 1..<4 daje nam elementy o indeksach 1, 2 i 3, ale nie o indeksie 4. Jest to przydatne, gdy dokładnie wiesz, w którym miejscu chcesz zakończyć.

Jeśli chcesz uwzględnić indeks końcowy, użyj operatora zakresu domkniętego (...):

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

Ważny szczegół: wynikiem wycinania fragmentu jest ArraySlice, a nie zwykła Array. Jeśli potrzebujesz prawdziwej tablicy, opakuj ją w Array():

let original = [1, 2, 3, 4, 5]
let sliced = Array(original[0..<3])
print(sliced)  // [1, 2, 3]
challenge icon

Wyzwanie

Łatwy
Napisz funkcję getMiddleElements, która przyjmuje numbers, start i end oraz zwraca wycinek tablicy od indeksu początkowego do indeksu końcowego (bez tego indeksu).

Użyj operatora przedziału lewostronnie domkniętego i prawostronnie otwartego (..<), aby wyodrębnić określoną część tablicy i zwrócić ją jako zwykłą tablicę.

Parametry:

  • numbers ([Int]): Tablica do wycięcia
  • start (Int): Indeks początkowy (włącznie)
  • end (Int): Indeks końcowy (bez tego indeksu)

Zwraca: Tablicę zawierającą elementy od indeksu początkowego do indeksu końcowego (bez tego indeksu) ([Int])

Przykład: Jeśli numbers ma wartość [10, 20, 30, 40, 50, 60], start ma wartość 1, a end ma wartość 4, funkcja powinna zwrócić [20, 30, 40].

Spróbuj swoich sił

func getMiddleElements(numbers: [Int], start: Int, end: 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