Menu
Coddy logo textTech

Dizi Dilimleme Bölüm 2

Coddy'nin Swift Journey'sinin Temeller bölümünün bir parçası — ders 74 / 86.

Swift, bir dizinin başından veya sonuna kadar dilimleme yapmak için kullanışlı bir kısa yazım sözdizimi sağlar. 0 değerini veya son dizini açıkça belirtmek yerine, aralığın bir tarafını boş bırakabilirsiniz.

Bir dizinin başından belirli bir indekse kadar dilimlemek için başlangıç değerini atlayın:

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

Benzer şekilde, belirli bir indeksten sona kadar dilimlemek için bitiş değerini atlayın:

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

Belirli bir başlangıç noktasını dahil etmek için kapalı aralık versiyonunu da kullanabilirsiniz:

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

Bu tek taraflı aralıklar, ilk birkaç öğeye veya belirli bir noktadan sonraki her şeye ihtiyaç duyduğunuzda kodunuzu daha temiz hale getirir. ArraySlice yerine normal bir diziye ihtiyacınız varsa, sonucu Array() içine almayı unutmayın.

challenge icon

Görev

Kolay

numbers ve index parametrelerini alan ve verilen indeksten dizinin sonuna kadar olan tüm öğeleri döndüren bir splitArray fonksiyonu yazın.

Belirtilen indeksten sona kadar dilimlemek için tek taraflı aralık operatörünü (...) kullanın ve sonucu normal bir dizi olarak döndürün.

Parametreler:

  • numbers ([Int]): Dilimlenecek dizi
  • index (Int): Başlangıç indeksi (dahil)

Döndürür: Verilen indeksten dizinin sonuna kadar olan tüm öğeleri içeren bir dizi ([Int])

Örnek: Eğer numbers değeri [5, 10, 15, 20, 25, 30] ve index değeri 3 ise, fonksiyon [20, 25, 30] döndürmelidir.

Kopya kağıdı

Swift, aralığın bir tarafını boş bırakarak dizileri baştan veya sona kadar dilimlemek için kısa yol söz dizimi sağlar.

Baştan belirli bir indekse kadar dilimlemek için başlangıç değerini atlayın:

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

Belirli bir indeksten sona kadar dilimlemek için bitiş değerini atlayın:

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

Belirli bir bitiş indeksini dahil etmek için kapalı aralık (closed range) versiyonunu kullanın:

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

Tek taraflı aralıklar bir ArraySlice döndürür. Sonucu normal bir diziye dönüştürmek için Array() içine sarın:

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

Kendin dene

func splitArray(numbers: [Int], index: Int) -> [Int] {
    // Kodunuzu buraya yazın
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler