[arr firstObject] 和 arr[0] 的区别
来源:互联网 发布:java thread 回调 编辑:程序博客网 时间:2024/05/21 09:57
在OC编程中,很多应用场景下都会,调用到某一个数组的第一个元素,例如网络请求数据,转换成model等。
在iOS编程中大家可以使用[arr firstObject]这一方法去直接获取arr这个数组的第一个元素,他的内部实现原理上是这个样子的
NSArray *arr = [NSArray array];id item = [arr firstArray];// 在这个方法出现之前你要这样处理id item = [arr count] > 0 ? arr[0] : nil;所以我们在编程的过程中,如果使用到某一数组的第一个元素时,切勿直接访问arr[0],因为如果这个数组为空,你访问第一个元素,就会造成下标越界,而引起程序崩溃。
所以firstObject这个方法内部做了保护措施,如果数组为空就返回一个nil给请求数组第一个元素的变量,如果不为空,就返回数组第一个元素给这个变量。
所以在编程中,一定要注意区分。
0 0
- [arr firstObject] 和 arr[0] 的区别
- “var arr = []; ”和 “var arr = {};” 的区别
- $xx=$arr[0]和$xx=$arr["0"]的区别
- char arr[] 和 char *arr区别
- android arr和jar的区别
- .arr
- arr
- Arr
- 请教问题delete[]arr与 delete arr[]的区别
- javaScript arr.map 与 arr.forEach 的区别
- c语言:sizeof的使用,其不是函数,是一个操作符关键字,定义一个数组arr,输出arr和&arr的区别
- firstObject 和 [0]的区别-iOS初学
- array[0]和[array firstObject]的区别
- $arr['key'] 与 $arr["key"] 与 $arr[key]的差别:
- arr和jar
- C/C++ char* arr与char arr[]的区别(反汇编解析)
- Jquery对数组提供的两个函数$.map(arr,fn)和$.each(arr,fn)
- js中arr的赋值不影响原数组,赋值和引用的区别
- avrdude下载错误及解决
- 数据缓存——NSKeyedArchiver归档(NSCoding)
- 关键字const
- JAVA用双栈实现队列,纪念我挂掉的第一次腾讯面试题
- Android中的Handler和AsyncTask的区别
- [arr firstObject] 和 arr[0] 的区别
- Android中关联源码遇到的问题
- 第k大的数
- 安装visual studio 2010显示 Microsoft Application Error Reporting安装失败错误
- [POJ 2100] Graveyard Design (Two Pointer)
- OkHttp使用介绍
- Android API中IBinder接口的谷歌翻译
- jy901 ajson树莓派上编译错误
- magento 电子商务平台安装