【问题标题】:Bug with optionals and type conversion带有选项和类型转换的错误
【发布时间】:2014-12-24 09:48:22
【问题描述】:

我是 iOS 开发新手,很难理解以下内容。

在配备 Yosemite 10.10.2 和 Xcode 6.1.1 的 MacBook Pro 上,我有以下代码:

let unixDateString = "1419382818000"
println(unixDateString.toInt()!)

当我使用模拟器运行此代码时,任何上述设备(包括 iPhone 5S)都可以按预期工作(没有崩溃)。

但是对于 iphone5 和 iphone 4S,程序崩溃并且调试器告诉我 unixDateString.toInt() 的值为零。它也会在 ipad2 和 ipad 视网膜上崩溃,但不会在 ipad air 上崩溃。

发生了什么事?

【问题讨论】:

    标签: ios iphone xcode swift xcode6


    【解决方案1】:

    iPhone5 及以下设备是 32 位设备,因此 Int 是 32 位的,您的字符串太大而无法放入 Int 中,因此 toInt 失败并返回 nil

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-06
      • 1970-01-01
      • 1970-01-01
      • 2013-09-06
      相关资源
      最近更新 更多