I am having problems using strings in switch statements in Swift.
I have a dictionary called opts
which is declared as <String, AnyObject>
I have this code:
switch opts["type"] { case "abc": println("Type is abc") case "def": println("Type is def") default: println("Type is something else") }
and on the lines case "abc"
and case "def"
I get the following error:
Type 'String' does not conform to protocol 'IntervalType'
Can someone explain to me what I am doing wrong?
This error is shown when an optional is used in a switch statement. Simply unwrap the variable and everything should work.
switch opts["type"]! { case "abc": println("Type is abc") case "def": println("Type is def") default: println("Type is something else") }
Edit: In case you don't want to do a forced unwrapping of the optional, you can use guard
. Reference: Control Flow: Early Exit
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With