【发布时间】:2016-03-10 01:13:56
【问题描述】:
我正在尝试编写一个程序,该程序从用户输入一个数字并将其存储到一个字符串中,然后我试图将该字符串转换为整数以供进一步使用。每当我转换它时,它会为整数值显示 nil,但在保存为字符串时会打印输入。到目前为止,这是我的代码。这是我第一次尝试用swift写。
import Foundation
func input() -> String{
var keyboard = NSFileHandle.fileHandleWithStandardInput()
var inputData = keyboard.availableData
return NSString(data: inputData, encoding:NSUTF8StringEncoding) as! String
}
print("What is a number: ")
let user: String? = input()
print("You typed: " + user!)
var num = Int(user!)
print("Your number was" ,(num))
【问题讨论】:
-
如果你输入的不是数字怎么办?或者你只是假设输入是数字
-
user末尾包含换行符,这就是您转换为Int失败的原因。 -
如何去掉换行符
-
将每个字符复制到一个新字符串中,直到找到换行符,然后停止复制。返回新字符串。
-
我该怎么做呢,我今天开始看起来很快,所以在某个角色出现之前我不知道应该如何复制。