Wie kann ich ein optionales Tupel für die Mustererkennung in Swift auspacken?
n Swift gibt es ein gemeinsamesif let
Muster zum Auspacken von Optionen:
if let value = optional {
print("value is now unwrapped: \(value)")
}
Ich mache derzeit diese Art von Musterabgleich, aber mit Tupeln in einem Schaltergehäuse, in dem beide Parameter optional sind:
//url is optional here
switch (year, url) {
case (1990...2015, let unwrappedUrl):
print("Current year is \(year), go to: \(unwrappedUrl)")
}
Dies druckt jedoch:
"Current year is 2000, go to Optional(www.google.com)"
Ist es eine Möglichkeit, meine optionale Übereinstimmung und Musterübereinstimmung nur dann auszupacken, wenn sie nicht gleich Null ist? Derzeit ist meine Problemumgehung folgende:
switch (year, url) {
case (1990...2015, let unwrappedUrl) where unwrappedUrl != nil:
print("Current year is \(year), go to: \(unwrappedUrl!)")
}