Swift 5 ile, ihtiyaçlarınıza göre, sorununuzu çözmek için aşağıdaki 6 Oyun Alanı kodundan birini seçebilirsiniz .
# 1. Alt subscript(_:)
simge kullanma
let array = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L"]
let arraySlice = array[..<5]
//let arraySlice = array[0..<5] // also works
//let arraySlice = array[0...4] // also works
//let arraySlice = array[...4] // also works
let newArray = Array(arraySlice)
print(newArray) // prints: ["A", "B", "C", "D", "E"]
# 2. prefix(_:)
Yöntemi kullanarak
Karmaşıklık: O (1) eğer toplama uygunsa RandomAccessCollection
; aksi takdirde O ( k ); burada k , koleksiyonun başından itibaren seçilecek öğe sayısıdır.
let array = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L"]
let arraySlice = array.prefix(5)
let newArray = Array(arraySlice)
print(newArray) // prints: ["A", "B", "C", "D", "E"]
Apple şunları belirtiyor prefix(_:)
:
Maksimum uzunluk koleksiyondaki öğe sayısını aşarsa, sonuç koleksiyondaki tüm öğeleri içerir.
3.. prefix(upTo:)
Yöntemi kullanarak
Karmaşıklık: O (1)
let array = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L"]
let arraySlice = array.prefix(upTo: 5)
let newArray = Array(arraySlice)
print(newArray) // prints: ["A", "B", "C", "D", "E"]
Apple şunları belirtiyor prefix(upTo:)
:
Kullanma prefix(upTo:)
yöntemi koleksiyonun en alt yazı olarak kısmi bir yarı açık aralığı kullanarak eşdeğerdir. Alt simge gösterimi tercih edilir prefix(upTo:)
.
4.. prefix(through:)
Yöntemi kullanarak
let array = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L"]
let arraySlice = array.prefix(through: 4)
let newArray = Array(arraySlice)
print(newArray) // prints: ["A", "B", "C", "D", "E"]
5.. removeSubrange(_:)
Yöntemi kullanarak
Karmaşıklık: O ( n ); burada n , koleksiyonun uzunluğudur.
var array = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L"]
array.removeSubrange(5...)
print(array) // prints: ["A", "B", "C", "D", "E"]
6.. dropLast(_:)
Yöntemi kullanarak
Karmaşıklık: O (1) eğer toplama uygunsa RandomAccessCollection
; aksi takdirde, O ( k ), burada k bırakılacak eleman sayısıdır.
let array = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L"]
let distance = array.distance(from: 5, to: array.endIndex)
let arraySlice = array.dropLast(distance)
let newArray = Array(arraySlice)
print(newArray) // prints: ["A", "B", "C", "D", "E"]
n
öğelerini döndürmenin 6 farklı yolunu gösteren cevabımı görünArray
.