Grundsätzlich mag ich in entweder Set<Int>
können passieren kann passieren oder [Int]
oder irgend etwas, wo zumindest, ich durch eine ungeordnete Menge von Int
laufen kann.Funktionsparameter, wo ich in Set <Int> oder [Int]
Ich möchte lieber nicht [Int]
in eine Set<Int>
umwandeln (und umgekehrt). Und ich würde gerne vermeiden, Funktionen zu machen, die etwas anderes erfordern ([Int]
oder Set<Int>
), aber mach dasselbe, was ich gerade mache.
Ich benutze diese Funktion an vielen Orten und die Anrufer kümmern sich manchmal um Reihenfolge ([Int]
) und manchmal nicht (Set<Int>
). Die Funktion erfordert jedoch keine bestimmte Reihenfolge.
Etwas wie folgt aus:
extension SequenceType where Generator.Element: Int { }
aber als Parameter.
Funktion Beispiel (nach Wunsch):
Die Int
wie oben erläutert nur zur Vereinfachung war, mein Beispiel ist einige Datenobjekt.
struct TextNumber {
let text: String
let number: Int
}
Und hier ist das Wesentliche, was ich mit den Daten machen will.
func sendUpTextNumberArray(arrayOfTextNumber: [TextNumber]) {
var convertedData = [[String:AnyObject]]()
for textNumber in arrayOfTextNumber {
convertedData.append(textNumber.convert())
}
Service.sendJSON(convertedData)
}
Können Sie ein Beispiel für das, was diese Funktion mit der tun würde Funktionsparameter selbst? –
Ich denke, Sie müssen einen für die eigentliche Funktion auswählen (ich würde '[Int]' vorschlagen) und dann eine zweite Funktion erstellen, die die erste umschließt: 'firstFunction (Array (Eingabe))' – Paulw11
@Dan, I habe gerade ein Beispiel hinzugefügt. Leo Dabus hat eine tolle Antwort gegeben, die für meine Bedürfnisse funktioniert, aber ich bin offen für alles andere. Vielen Dank! – KKendall