CoreData NSNumber для Int32
Я прочитал несколько постов здесь и здесь, и я понимаю "почему". Ни одно из предложений в этих постах не сработало для меня, но пошло на конвертацию. Это похоже на хак для меня и как будто я что-то упустил.
Я включил последний бит кода здесь.
Мой сценарий:
- Шаг 1: Сохранить объект CoreData как Primitive Int32 (не показано в коде)
- Шаг 2: Получить NSNumber Object (показывает только необходимый код)
- Шаг 3: NSNumber для Int
Шаг 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) }
Есть ли способ лучше? Я чувствую, что что-то упустил? (Использование Int не вариант из-за размера участвующих чисел. Я использовал QTY здесь, но это было просто в качестве примера). Ваши отзывы и ответы очень ценятся, так как я продолжаю изучать Swift.
1 ответ
Похоже, что нет более чистого способа сделать это, кроме двухэтапного процесса, чтобы перевести его из NSNumber в Int 32.
Спасибо всем, кто пинговал меня на этом.