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)")
}