Ich arbeite derzeit durch die Grundlagen der Typ Casting und Inspektion in swift 4. Ich habe ein Beispiel in der Apple Developer Buch, die ich brauche ein bisschen Hilfe mit.Typ Casting und Inspektion Abfrage
Sie haben eine Übung, um ein Beliebiges Wörterbuch zu erstellen und dann die Werte, die durch das Wörterbuch laufen, auszupacken. Die gegebene Lösung zeigt die for-Schleife mit dem Wert in Klammern, und jeder Wert wird ausgepackt. Kann jemand eine Erklärung für die gezeigte Lösung geben? und gibt es einen anderen (einfachen) Weg, dies zu lösen? Es gibt nicht genug Informationen in dem Buch.
let anythingAndEverything: [String: Any] = ["FirstBool": true,
"FalseBool": false, "Unknown": "90", "AnInteger": 12, "ADouble": 1.1]
print(anythingAndEverything)
var total: Double = 0
for (_, value) in anythingAndEverything {
if let value = value as? Bool {
if value {
total += 2
} else {
total -= 3
}
} else if let value = value as? Double {
total += value
} else if let value = value as? Int {
total += Double(value)
} else if let value = value as? String {
total += 1
}
}
print(total)
Vielen Dank für jede Hilfe im Voraus :-)
danke @Sweeper, die sicherlich einige meiner Verwirrung geklärt hat. Ich werde ein Experiment mit der oben vorgeschlagenen Reduzierungslösung machen und sehen, ob ich ein Beispiel für die Arbeit bekommen kann. – Gemma