Linux上的Swift-NSString-to-String

Linux上的Swift-NSString-to-String,swift,Swift,在文档中,我找到了一篇文章: 和一个代码: import Foundation let myString: NSString = "123" if let integerValue = Int(myString as String) { print("\(myString) is the integer \(integerValue)") } // prints "123 is the integer 123" 在MacOS上它起作用了,但在Lunux却没有。 我有一个错误: 错误:无

在文档中,我找到了一篇文章:

和一个代码:

import Foundation
let myString: NSString = "123"
if let integerValue = Int(myString as String) {
    print("\(myString) is the integer \(integerValue)")
}
// prints "123 is the integer 123"
在MacOS上它起作用了,但在Lunux却没有。 我有一个错误:

错误:无法在中将“NSString”类型的值转换为“String”类型 如果let integerValue=Int(myString作为字符串)强制{


如果没有访问Linux编译器…我建议采取以下解决方法

let myString: NSString = "123"
if let integerValue = Int(String(myString)) {
    print("\(myString) is the integer \(integerValue)")
}


我从来没有在linux上尝试过Swift,所以我甚至不能说它是如何工作的,但您是否可能使用较旧的Swift(我用swift 2.2在mac上试过,用swift 2.2在Linux上试过,你可以在这里测试:-dWdevcenter--swift-_-lp&cm_mc_uid=11602763416914412976120&cm_mc_sid_50200000=1451194962#/replNope!
NSString
在这个实现中被彻底破坏了。
myString.description
返回错误的结果并
myString.integerValue
生成一个n输出中存在未知错误。
let myString: NSString = "123"
if myString.isEqualToString("0") || myString.integerValue != 0 {
    print("\(myString) is the integer \(myString.integerValue)")
}