Swift extrahiert einen Int-, Float- oder Double-Wert aus einem String (Typkonvertierung)

8

Bitte könntest du mir hier helfen? Ich muss verstehen, wie man einen String in einen Int, Float oder Double verwandelt! Dieses Problem tritt auf, wenn ich versuche, den Wert von einem UITextField abzurufen und diese Art der Konvertierung zu benötigen!

Ich habe es so gemacht:

%Vor%

aber seit Xcode 6 beta 6 scheint es nicht mehr zu funktionieren!

Ich habe es auch so versucht:

%Vor%

Bitte hilf mir oder sag mir, wo ich die Antwort finde! Vielen Dank!

    
365Cases 07.09.2014, 08:55
quelle

5 Antworten

26

Konvertiere String in NSString und verwende bequeme Methoden:

%Vor%

Nach int

var intValue : Int = NSString(string: str).integerValue // 3

Float

var floatValue : Float = NSString(string: str).floatValue // 3.09999990463257

Zu verdoppeln

var doubleValue : Double = NSString(string: str).doubleValue // 3.1

Referenz

%Vor%     
Maxim Shoustin 07.09.2014, 09:12
quelle
3

Verwenden:

%Vor%

Gibt ein optionales Argument zurück, das null ist, wenn die Zeichenfolge nicht analysiert werden kann. Zum Beispiel:

%Vor%

Natürlich können Sie das Auspacken erzwingen, wenn Sie sicher sind:

%Vor%

Erweiterung der Zeichenfolge

Wenn Sie dies an mehreren Stellen tun und die Fehlerbehandlung überall gleich gehandhabt werden soll, sollten Sie String mit Konvertierungsmethoden erweitern:

Zum Beispiel:

%Vor%

und dann um es zu benutzen:

%Vor%     
floatingpoint 03.09.2015 04:55
quelle
1
%Vor%     
Tinvy 08.08.2016 07:39
quelle
0
%Vor%     
bawasuru 17.12.2014 00:51
quelle
0
%Vor%     
Ranjan 06.01.2017 06:43
quelle