2016-09-14 47 views
0

我試圖在Swift 3中擴展Array<Float>。目標是添加一個函數並在正文中調用幾個self.append()語句。這是我到目前爲止有:帶浮點數組的Swift 3擴展

extension Array where Element: FloatingPoint { 

    mutating func test(a: Float) { 
     self.append(a) 
    } 

} 

我得到一個錯誤,append()需要一個FloatingPoint,而且它不能使用Float。但Float型不符合FloatingPoint?順便說一句,在Swift 2.X中,我擴展了_ArrayType,它運行良好。它似乎在Swift 3中消失了,append()函數現在在Array中。

回答

2

只能追加要素Element類型的數組:

extension Array where Element: FloatingPoint { 

    mutating func test(a: Element) { 
     self.append(a) 
    } 

} 

注:該擴展一直延伸浮點數組:[Double][CGFloat],...

+0

沒錯。這工作。非常感謝。 – user3894009