该应用程序基本上通过输入初始和最终速度和时间来计算加速度,然后使用一个公式来计算加速度。但是,由于文本框中的值是字符串,我无法将它们转换为整数。
@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
斯威夫特3.0
试试这个,你不需要检查任何条件,我已经做了一切,只是使用这个函数。发送任何字符串,数字,浮点数,双精度等。您将得到一个数字作为值,如果它无法转换您的值则为0
功能:
func getNumber(number: Any?) -> NSNumber {
guard let statusNumber:NSNumber = number as? NSNumber else
{
guard let statString:String = number as? String else
{
return 0
}
if let myInteger = Int(statString)
{
return NSNumber(value:myInteger)
}
else{
return 0
}
}
return statusNumber
}
用法:
在代码中添加上述函数并转换使用
让myNumber = getNumber(number: myString)
如果myString包含数字或字符串,则返回数字,否则返回0
示例1:
let number:String = "9834"
print("printing number \(getNumber(number: number))")
输出:打印号9834
示例2:
let number:Double = 9834
print("printing number \(getNumber(number: number))")
输出:打印号9834
示例3:
let number = 9834
print("printing number \(getNumber(number: number))")
输出:打印号9834