Sie können is
in einem switch
Block absolut verwenden. Siehe "Casting für Any und AnyObject" in der Swift-Programmiersprache (obwohl es natürlich nicht auf Any
beschränkt ist). Sie haben ein umfangreiches Beispiel:
for thing in things {
switch thing {
case 0 as Int:
println("zero as an Int")
case 0 as Double:
println("zero as a Double")
case let someInt as Int:
println("an integer value of \(someInt)")
case let someDouble as Double where someDouble > 0:
println("a positive double value of \(someDouble)")
// here it comes:
case is Double:
println("some other double value that I don't want to print")
case let someString as String:
println("a string value of \"\(someString)\"")
case let (x, y) as (Double, Double):
println("an (x, y) point at \(x), \(y)")
case let movie as Movie:
println("a movie called '\(movie.name)', dir. \(movie.director)")
default:
println("something else")
}
}
Hallo, Rob. Nur Kuriosität: Da wir in keinem der oben genannten 'Fälle'' Schalter'' verwenden, was würde der Gebrauch von 'thing' bedeuten? Ich habe es nicht gesehen. Vielen Dank. – Unheilig
ist der Wert, der in jedem Fall getestet wird. Wenn also ein Film ein Film ist, wird sein Wert an den Symbolfilm gebunden. –
"Du kannst absolut' is' "benutzen - und dann benutzt er es nie. X) – Raphael