CoreData NSNumber到Int32

时间:2016-05-20 18:58:24

标签: core-data swift2 int32

我已阅读了多篇帖子herehere,并且我理解"为什么"。这些帖子中的所有建议都没有为我起作用,但是一次只进行一次转换。这对我来说就像是一个黑客,就像我错过了一些东西。

我在这里包含了最后一段代码。

我的情景:

  1. 步骤1:将CoreData对象存储为原始Int32(未在代码中显示)
  2. 步骤2:获取NSNumber对象(仅显示所需代码)
  3. 第3步:NSNumber到Int
  4. 第4步:将Int转换为Int32

    var finalQTY:Int32
    
    //Step 2
    if let retQTY = managedObject.valueForKey("totQty") as? NSNumber { 
    //Step 3       
    let preQTY = retQTY as Int
    //Step 4
    finalQTY = Int32(preQTY)
            }
    
  5. 有更好的方法吗?我觉得我错过了什么? (由于涉及的数字大小,使用Int不是一个选项。我在这里使用了QTY,但这只是一个例子)。我继续学习Swift,非常感谢您的反馈和回复。

1 个答案:

答案 0 :(得分:0)

除了从NSNumber到Int 32的两步过程之外,似乎没有更简洁的方法来执行此操作。

感谢所有为我而努力的人。