###swift 數組高階使用 在使用數組的時候,咱們一般會經過下標的方式來得到數組中的元素,可是有時候咱們會需求會很是變態,好比咱們只須要獲取數組中下標爲0,2,4的元素,或者對他們進行修改。swift的extension就給咱們提供了很好的幫助。直接上代碼:swift
// 對Array 進行擴展 extension Array { // 這裏咱們擴展一個新的方法,而且實現它的get和set方法 subscript(input:[Int]) ->ArraySlice<Element> { get { var result = ArraySlice<Element>() for i in input { assert(i < self.count, "越界")// 越界時的斷言 result.append(self[i]) } return result } set { for (index, i) in input.enumerate() { assert(i < self.count, "越界")// 越界時的斷言 self[i] = newValue[index] } } } } // 測試代碼以下 var array = [1, 2, 3, 4, 5] array[[0, 2, 4]] // [1, 4, 5] array[[0, 1, 2]] = [9, 9, 9] array // [9, 9, 9, 4, 5]
這樣就能夠知足咱們對數組的各類奇葩需求,但願能夠幫助你們。數組