今天被女朋友问到array[0]和[array firstObject]的区别,当时懵了一下,我的第一反应是当array为空的时候,前者会崩溃,而后者不会。
当然,事实也是如此。想想女朋友问出这种问题,也挺正常,因为她毕竟没有经历过早期的app开发。在早期的API中,firstObject方法是没有的(或者是不公开的),所以想要实现firstObject方法,就需要自己手动来写了:
id firstObject = array.count > 0 ? array[0] : nil;
今天被女朋友问到array[0]和[array firstObject]的区别,当时懵了一下,我的第一反应是当array为空的时候,前者会崩溃,而后者不会。
当然,事实也是如此。想想女朋友问出这种问题,也挺正常,因为她毕竟没有经历过早期的app开发。在早期的API中,firstObject方法是没有的(或者是不公开的),所以想要实现firstObject方法,就需要自己手动来写了:
id firstObject = array.count > 0 ? array[0] : nil;