我一直在研究Objective-C中的自动装箱(例如这里)。是否有一个新的语法来取消装箱呢?
例如,我想要缩短以下代码:
第二行的语法太可怕了。有没有新的语言特性来处理这个问题?
例如,我想要缩短以下代码:
NSArray *oneNumber = @[@1];
int one = ((NSNumber *)oneNumber[0]).intValue;
第二行的语法太可怕了。有没有新的语言特性来处理这个问题?
@...
语法与点语法一样,是编译器对具体方法调用的简写。自动装箱意味着当传递给需要NSNumber*
的方法时,裸标量(int x = 5;
)会被神奇地装箱。 (例如,KVC 的valueForKey:
是自动装箱/拆箱)。 - bbum