Is it possible to cast an NSInteger to NSNumber?

Fitzy picture Fitzy · Mar 14, 2012 · Viewed 39.6k times · Source

Is it possible to cast a NSInteger to a NSNumber object?

I need to convert the tag of a UIImageView object to a NSNumber object because I need to pass it as an argument to a function.

Answer

Sergey Kalinichenko picture Sergey Kalinichenko · Mar 14, 2012

You cannot cast it because NSInteger is not an object, just an alias for a built-in type. You can always create a new NSNumber object from NSInteger, like this:

NSNumber *myNum = @(myNsIntValue);

or in the prior version of the compiler, use

NSNumber *myNum = [NSNumber numberWithInteger:myNsIntValue];