基本上我想能夠通過Set<Int>
或[Int]
或任何東西,至少,我可以迭代通過一組無序的Int
。函數參數,我可以通過設置<Int>或[Int]
我寧願不必將[Int]
轉換爲Set<Int>
(反之亦然)。我想避免使功能需要不同的東西([Int]
或Set<Int>
),但做同樣的事情,這是我現在正在做的事情。
我在許多地方使用此功能,並且呼叫者有時關心訂單([Int]
),有時不關心(Set<Int>
)。但該功能不需要任何特定的順序。
事情是這樣的:
extension SequenceType where Generator.Element: Int { }
,但作爲一個參數。
函數示例(如需要):
的Int
如上所述只是爲了簡化,我的例子是一些數據對象。
struct TextNumber {
let text: String
let number: Int
}
這裏是我想要處理的數據的基本要素。
func sendUpTextNumberArray(arrayOfTextNumber: [TextNumber]) {
var convertedData = [[String:AnyObject]]()
for textNumber in arrayOfTextNumber {
convertedData.append(textNumber.convert())
}
Service.sendJSON(convertedData)
}
你能提供什麼該功能將與做榜樣函數參數本身? –
我想你將不得不爲實際功能選擇一個(我會建議'[Int]'),然後創建第二個函數來包裝第一個函數:'firstFunction(Array(input))' – Paulw11
@Dan,I只是增加了一個例子。利奧達布斯給出了一個很好的答案,可以滿足我的需求,但我也願意接受其他任何方面的答案。謝謝! – KKendall