Swift 3.0 String-Verkettung lässt "Optional" [duplizieren]

8

Seit Swift 3.0 habe ich Probleme mit Strings, besonders mit Verkettungen. Das erste Beispiel wäre das, was ich verwendet habe, seit ich angefangen habe, Swift zu benutzen, um meine URL-Strings zu definieren.

%Vor%

Hier ist der Host am Anfang der Klasse definiert. Dies funktionierte perfekt bis Swift 3.0, jetzt, wo es so aussieht:

%Vor%

das ist sehr seltsam. Jetzt muss ich das schreiben

%Vor%

Um die erwartete Ausgabe zu erhalten.

%Vor%

Ein anderes - Ich vermute ähnliches Problem, das ich mit Strings habe, ist dies. Ich bin wieder Verketten von Zeichenfolgen, aber dieses Mal verwende ich + ilke mit URLString - aber dieses Mal funktioniert das nicht. Codezeile sieht wie folgt aus:

%Vor%

, was unglücklicherweise einen String wie diesen erzeugt: "My Name Optional (26)". In diesem Fall habe ich keine Lösung String(describing: ageComponents.year) ist nicht optional und erlaubt mir nicht, Dinge wie String(describing: ageComponents.year) ?? "whatever"

zu tun

Hat jemand etwas Ähnliches gesehen?

    
jovanjovanovic 19.09.2016, 16:17
quelle

1 Antwort

2

In Swift 3 sind alle Eigenschaften der nativen Struktur DateComponents Optionals im Gegensatz zu den Foundation NSDateComponents Gegenstücken.

%Vor%

Sie müssen es auspacken. Wenn Sie die Einheit year in ageComponents angegeben haben, können Sie das sicher tun.

    
vadian 19.09.2016, 16:35
quelle