例如,在定义变量时使用 NSInteger 或 int 更有效吗?
在 Java 中,使用 Integer 还是 int 原始数据类型更有效?
NSInteger
不是一个对象,它只是一个使 int 平台独立的同义词,从定义中可以看出:
#if __LP64__ || NS_BUILD_32_LIKE_64
typedef long NSInteger;
typedef unsigned long NSUInteger;
#else
typedef int NSInteger;
typedef unsigned int NSUInteger;
#endif
NSNumber
但是,是一个对象类型。例如,当您需要将数字存储在NSArray
. 如果您正在进行计算或索引,NSInteger
将更容易使用并且效率更高。