方法firstObject vs objectAtIndex的用法有什么区别:0?
今天我已经testing使用firstObject和objectAtIndex:0。 如果数组大小为0,则使用前者不会导致崩溃,而后者会导致崩溃。 所以我在想,使用firstObject比objectAtIndex:0更好。 但是在使用firstObject over objectAtIndex方面还有什么问题:0?
我也一直在阅读NSArray的文档 ,我很惊讶,不知道为什么他们没有在文档中提到这个事实。
有一个关键的区别。 如果没有,则使用firstObject
返回nil
。 如果没有对象,使用objectAtIndex:0
会导致应用程序崩溃(抛出exception)。从用户体验的angular度来看,高度提倡使用crash,所以使用firstObject
更安全。
但是最大的缺陷是: firstObject
从iOS 4开始就已经可用了,但直到iOS 7才成为一个私有API。