黑马程序员技术交流社区

标题: NSArray是不可变数组的问题 [打印本页]

作者: 为梦想再启程    时间: 2016-3-21 23:02
标题: NSArray是不可变数组的问题
NSArray是不可变数组,那么它显然不支持增删改操作,神奇的是排序后的array还是可以赋值给这个不可变array!!请问:改变了顺序的array算不算做了修改操作呢?我看的书少,请别骗我……

作者: zx413331474    时间: 2016-3-21 23:31
dfasdfasdfadf
作者: black747521    时间: 2016-3-22 15:46
数组对象当然是不可以修改的,指的是那一块内存空间中的数据不可以修改。你重新赋值之后生成了新的数组对象,你只是将以前数组指针指向了新的数组对象。打印下地址你会发现,地址根本不一样。
作者: 为梦想再启程    时间: 2016-3-22 19:15
black747521 发表于 2016-3-22 15:46
数组对象当然是不可以修改的,指的是那一块内存空间中的数据不可以修改。你重新赋值之后生成了新的数组对象 ...

明白了,这里修改的是指针变量!!!
作者: 外号狐狸    时间: 2016-3-23 14:07
我理解,对象是指针变量,改变和不改变的意义在于,所指向的空间是不是有变化,如果指针指向另外一个空间,根本就不算是改变。
作者: 为梦想再启程    时间: 2016-3-24 17:52
外号狐狸 发表于 2016-3-23 14:07
我理解,对象是指针变量,改变和不改变的意义在于,所指向的空间是不是有变化,如果指针指向另外一个空间, ...

的却如此




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2