我想實現一個數組結構,它可以標記單個元素能夠被選中。因此,該元素可以很容易地訪問。如何在swift中實現可選擇的數組結構?
我正在創建一個圍繞Array
結構的包裝類。有沒有什麼好的方法可以將Array
方法委託給我的SelectableArray
的內部陣列?
還有其他更好的方法嗎?
class SelectableArray<Element: Comparable> {
let array = Array<Element>()
private var selectedIndex: Int? = .None
var selectedElement: Element? {
guard let index = selectedIndex else {
return .None
}
return array[index]
}
func select(index: Int) {
selectedIndex = array.indices.contains(index) ? index : .None
}
func select(element: Element) {
selectedIndex = array.indexOf(element)
}
}
能否請您提供一下您目前有一些代碼,使其更容易瞭解你正在努力實施什麼。 –
可能不是。你必須編寫你自己的方法。但是,您可以繼承「NSArray」。或者你可以嘗試'擴展'''''結構。 –
已添加代碼,但尚未完全實施。數組更改時需要添加更新索引的邏輯。 –