Приведение типа C-стиля является самым ясным и легким для чтения. Если бы мне удалось найти код, который создал объект NSNumber
просто для того, чтобы он выполнил преобразование, у меня возникло бы удивление: «Почему он сделал это таким образом? Что-то здесь происходит, кроме простого преобразования старых типов? не хватает? "
Что касается скорости, я подозреваю, что простое преобразование типов также будет быстрее - объект NSNumber
должен будет выполнять почти те же самые операции, чтобы выполнить преобразование, и имеет дополнительные накладные расходы на создание объекта и обмен сообщениями сверху. того, что. Но, как и во всех таких случаях, не угадай - измерить. Профилируйте свой код, чтобы увидеть, является ли конверсия узким местом, достаточно значительным, чтобы быть достойным вашего внимания.