Konvertieren von String in Int mit Swift
Die Anwendung berechnet die Beschleunigung durch die Eingabe von anfangs-und Endgeschwindigkeit und Zeit, und dann verwenden Sie eine Formel zur Berechnung der Beschleunigung. Da jedoch die Werte in die Textboxen sind Strings, ich bin nicht in der Lage zu konvertieren Ganzzahlen.
@IBOutlet var txtBox1 : UITextField
@IBOutlet var txtBox2 : UITextField
@IBOutlet var txtBox3 : UITextField
@IBOutlet var lblAnswer : UILabel
@IBAction func btn1(sender : AnyObject) {
let answer1 = "The acceleration is"
var answer2 = txtBox1
var answer3 = txtBox2
var answer4 = txtBox3
InformationsquelleAutor der Frage Marwan Qasem | 2014-06-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Grundidee, beachten Sie, dass dies nur im Swift-1.x (check-out ParaSara ' s Antwortum zu sehen, wie es funktioniert, Swift 2.x):
Update für Swift 4
InformationsquelleAutor der Antwort Narendar Singh Saini
Update-Antwort für swift 2.0 :
toInt()
- Verfahren angegeben ist, ein Fehler. Weil,Swift 2.x, die.toInt()
wurde die Funktion entfernt aus Zeichenkette. In Ersatz -, Int -, hat jetzt einen Initialisierer akzeptiert eine Zeichenfolge:InformationsquelleAutor der Antwort Paraneetharan Saravanaperumal
myString.toInt()
- konvertieren Sie die Zeichenfolge in int .Swift 3.x
Wenn Sie eine integer-Versteck im inneren eines string, kann man convertby mit der integer-Konstruktor, wie folgt:
Als mit anderen Datentypen (Float und Double), können Sie auch konvertieren, indem Sie mit NSString:
InformationsquelleAutor der Antwort Kumar KL
Xcode 8.3.2 • Swift 3.1
Erforderlichen Erweiterungen, Strukturen und Initialisierungen:
InformationsquelleAutor der Antwort Leo Dabus
Die Sie verwenden möchten
NSNumberFormatter().numberFromString(yourNumberString)
. Es ist toll, weil es gibt ein optionales, dann können Sie den test mit einem "wenn wir wollen, um zu bestimmen, wenn die Konvertierung erfolgreich war.zB.
InformationsquelleAutor der Antwort Abaho Katabarwa
//Xcode 8.1 und swift 3.0
Können wir auch umgehen, indem Sie Optionale Bindung, Einfach
InformationsquelleAutor der Antwort Pankaj Nigam
swift 4.0
können Sie auch Optional Verbindlich, andere als gezwungen verbindlich.
zB:
InformationsquelleAutor der Antwort OOMMEN
Swift 3
Die einfachste und sicherer Weg ist:
Vermeiden Sie ungültige Werte Einstellung der Tastatur Typ Anzahl pad:
InformationsquelleAutor der Antwort torcelly
Swift 4:
InformationsquelleAutor der Antwort Ankit garg
ich habe ein einfaches Programm, wo hast du die 2 txt-Feld Sie nehmen Eingabemaske der Benutzer und fügen Sie Sie, um es einfacher zu machen zu verstehen, finden Sie den code unten.
hoffe, das hilft.
InformationsquelleAutor der Antwort AliRaza Qureshi
Über die int() und Swift 2.x: wenn Sie einen null-Wert nach der Konvertierung überprüfen, wenn Sie versuchen, zu konvertieren einen string mit einer großen Anzahl (zum Beispiel: 1073741824), in diesem Fall versuchen:
InformationsquelleAutor der Antwort Alessandro Ornano
Swift 3.0
Versuchen, diese, Sie brauchen nicht zu prüfen, ein Zustand, den ich alles getan haben, nutzen Sie einfach diese Funktion. Senden Sie alles string, number, float, double ,etc,. Sie erhalten eine Nummer als Wert oder 0, wenn dies nicht möglich ist, konvertieren Sie Ihre Wert
Funktion:
Verwendung:
Fügen Sie die obige Funktion in code zu konvertieren, verwenden Sie
let myNumber = getNumber(number: myString)
wenn die
myString
hat eine Zahl oder Zeichenfolge, es gibt die Nummer, sonst gibt es0
Beispiel 1:
Ausgabe:
printing number 9834
Beispiel 2:
Ausgabe:
printing number 9834
Beispiel 3:
Ausgabe:
printing number 9834
InformationsquelleAutor der Antwort Koushik
Neuesten swift3 dieser code ist einfach zu konvertieren von string zu int
InformationsquelleAutor der Antwort
Verwenden:
ODER
Machen Sie Ihre UITextField KeyboardType als DecimalTab von Ihrem XIB-oder storyboard, und entfernen Sie alle, wenn Bedingung für jegliche Berechnung, dh.
Weil der Tastatur-Typ ist DecimalPad es gibt keine chance zu geben andere 0-9 oder .
Hoffe diese Hilfe !!
InformationsquelleAutor der Antwort Narendar Singh Saini
InformationsquelleAutor der Antwort Jenny
Dies funktioniert für mich
InformationsquelleAutor der Antwort Naishta
Weil ein string enthalten kann, die nicht-numerische Zeichen, die Sie verwenden sollten ein
guard
zum Schutz der Bedienung. Beispiel:InformationsquelleAutor der Antwort RonTLV
In Swift 2.x, die .toInt() wurde die Funktion entfernt aus Zeichenkette. In Ersatz -, Int -, hat jetzt einen Initialisierer akzeptiert eine Zeichenfolge
Int(myString)
In Ihrem Fall könnten Sie mit Int(textField.text!) statt textField.text!.toInt()
Swift 1.x
Swift 2.x, 3.x
InformationsquelleAutor der Antwort Azarmanesh
für die Alternative Lösung. Sie können mit extension ein nativer Typ. Sie können testen, mit Spielplatz.
"2".add(1)
InformationsquelleAutor der Antwort Durul Dalkanat
Meine Lösung ist eine Allgemeine Erweiterung für die string -, int-Konvertierung.
InformationsquelleAutor der Antwort flame3
für Swift3.x
InformationsquelleAutor der Antwort User9527
InformationsquelleAutor der Antwort Krunal
Als der swift 3muss ich Kraft meiner #%@! string & int mit einem "!" sonst funktioniert es halt nicht.
Beispiel:
InformationsquelleAutor der Antwort Sam B
Frage : string "4.0000" kann nicht umwandeln in integer mit Int("4.000")?
Antwort : Int() check string ist integer ist oder nicht, wenn ja, dann geben Sie integer und sonst null. aber Float oder Double umwandeln kann eine beliebige Anzahl von string zu entsprechenden Float-oder Double-ohne Angabe von null. Beispiel wenn Sie "45" integer string aber mit Float - ("45") gibt Sie 45.0 float-Wert oder die Verwendung von Doppel - ("4567") gibt Sie 45.0.
Lösung : NSString(string: "45.000").integerValue oder Int(Float("45.000")!)! korrekte Ergebnis.
InformationsquelleAutor der Antwort Ravi H Malviya
Vor kurzem habe ich das gleiche Problem. Unter Lösung ist Arbeit für mich:
InformationsquelleAutor der Antwort Nirmalsinh