【发布时间】:2016-11-17 13:34:35
【问题描述】:
当用户输入一个数字时,他们必须猜测随机数。这些是我在代码中出现两次的这行代码的错误。
“类型为“String”的值没有数字“stringByReplacingOccruencesOfString”
input = input.stringByReplacingOccurrencesOfString("\n", withSring:"",
这是完整的代码
import Foundation
var randomNumber = 1
var userGuess:Int? = 1
var continueGuessing = true
var keepPlaying = true
var input = ""
while (keepPlaying) {
randomNumber = Int(arc4random_uniform(101))
// gets a random number between 0- 1000
print("The random number to guess is:\(randomNumber)");
while (continueGuessing) {
print ("Print a number between 0 and 100")
input = NSString(data: FileHandle.standardInput.availableData,
encoding:String.Encoding.utf8.rawValue) as! String // gets keyboard input
input = input.stringByReplacingOccurrencesOfString("\n", withSring:"",
options: NSString.CompareOptions.LiteralSearch, range: nil)
userGuess = Int(input)
if (userGuess == randomNumber){
continueGuessing = false
print("Correct Number!");
}
else if (userGuess! > randomNumber){
print("Your guess is too high");
}
else{
print("Your guess is too low");
}
}
print ("Play Again? Y or N");
input = NSString(data: FileHandle.standardInput.availableData,
encoding:String.Encoding.utf8.rawValue)! as String
input = input.stringByReplacingOccurrencesOfString("\n", withString: "",
options: NSString.CompareOptions.LiteralSearch, range: nil)
if(input == "N" || input == "n"){
keepPlaying = false
}
continueGuessing = true
}
【问题讨论】:
-
withSring是错字吗? – 并不是说 Swift 3 中的方法名称发生了很大变化。(但是“转换为当前的 Swift 语法”应该会有所帮助) -
无论是哪个 Swift 版本,假设您使用的是 Xcode,您可以通过删除方法调用、输入
input.replacing并查看自动完成功能来解决您的问题。 -
或浏览documentation ...
-
转换只是增加了更多错误
标签: swift command-line