.toInt() 在 Swift 2 中删除?
.toInt() removed in Swift 2?
我正在开发一个使用文本字段并将其转换为整数的应用程序。以前我的代码
textField.text.toInt()
成功了。现在 Swift 将此声明为错误并告诉我做
textField.text!.toInt()
它说没有 toInt()
并尝试使用 Int()
。那也不管用。刚刚发生了什么?
在 Swift 2.x 中,.toInt()
函数已从 String
中删除。作为替换,Int
现在有一个接受 String
的初始化器
Int(myString)
在你的情况下,你可以使用 Int(textField.text!)
代替 textField.text!.toInt()
Swift 1.x
let myString: String = "256"
let myInt: Int? = myString.toInt()
Swift 2.x, 3.x
let myString: String = "256"
let myInt: Int? = Int(myString)
这也给了我一些错误!
这段代码解决了我的错误
let myString: String = dataEntered.text! // data entered in textField
var myInt: Int? = Int(myString) // conversion of string to Int
myInt = myInt! * 2 // manipulating the integer sum,difference,product, division
finalOutput.text! = "\(myInt)" // changes finalOutput label to myInt
Swift 2
let myString: NSString = "123"
let myStringToInt: Int = Int(myString.intValue)
将您的字符串声明为对象 NSString
并使用 intValue getter
我在支付处理应用程序中也有同样的问题。
Swift1.0
let expMonth = UInt(expirationDate[0].toInt()!)
let expYear = UInt(expirationDate[1].toInt()!)
在 Swift 2.0
之后
let expMonth = Int(expirationDate[0])
let expYear = Int(expirationDate[1])
创建您自己的扩展方法以将其放回:
extension String {
func toInt() -> Int? {
return Int(self)
}
}
我正在开发一个使用文本字段并将其转换为整数的应用程序。以前我的代码
textField.text.toInt()
成功了。现在 Swift 将此声明为错误并告诉我做
textField.text!.toInt()
它说没有 toInt()
并尝试使用 Int()
。那也不管用。刚刚发生了什么?
在 Swift 2.x 中,.toInt()
函数已从 String
中删除。作为替换,Int
现在有一个接受 String
Int(myString)
在你的情况下,你可以使用 Int(textField.text!)
代替 textField.text!.toInt()
Swift 1.x
let myString: String = "256"
let myInt: Int? = myString.toInt()
Swift 2.x, 3.x
let myString: String = "256"
let myInt: Int? = Int(myString)
这也给了我一些错误!
这段代码解决了我的错误
let myString: String = dataEntered.text! // data entered in textField
var myInt: Int? = Int(myString) // conversion of string to Int
myInt = myInt! * 2 // manipulating the integer sum,difference,product, division
finalOutput.text! = "\(myInt)" // changes finalOutput label to myInt
Swift 2
let myString: NSString = "123"
let myStringToInt: Int = Int(myString.intValue)
将您的字符串声明为对象 NSString 并使用 intValue getter
我在支付处理应用程序中也有同样的问题。 Swift1.0
let expMonth = UInt(expirationDate[0].toInt()!)
let expYear = UInt(expirationDate[1].toInt()!)
在 Swift 2.0
之后let expMonth = Int(expirationDate[0])
let expYear = Int(expirationDate[1])
创建您自己的扩展方法以将其放回:
extension String {
func toInt() -> Int? {
return Int(self)
}
}