Ако се разровите в автоматично генерирания заглавен файл на Swift (където изглежда, че в момента е по-голямата част от документацията), ще намерите това, описващо Slice
:
/// The `Array`-like type that represents a sub-sequence of any
/// `Array`, `ContiguousArray`, or other `Slice`.
Тъй като Slice
е подобно на Array
, има смисъл startIndex
да връща 0
, тъй като startIndex
на Array
винаги ще бъде 0
. По-надолу, където дефинира startIndex
, ще видите също:
/// Always zero, which is the index of the first element when non-empty.
var startIndex: Int { get }
Ако търсите първия запис в Slice
, просто използвайте: s.first
:
/// The first element, or `nil` if the array is empty
var first: T? { get }
Ако трябва да намерите индекса в оригиналния Array
, където започва Slice
, можете да направите нещо подобно:
if let startValue = s.first {
let index = find(ary, startValue)
/* ... do something with index ... */
}
person
Mike S
schedule
02.10.2014