NSArray 中的 NSObject 的属性是不是会发生变化,或者是不是必须再次将它们添加到 NSArray?

Posted

技术标签:

【中文标题】NSArray 中的 NSObject 的属性是不是会发生变化,或者是不是必须再次将它们添加到 NSArray?【英文标题】:Do properties of NSObjects inside an NSArray change or do they have to be added again to the NSArray?NSArray 中的 NSObject 的属性是否会发生变化,或者是否必须再次将它们添加到 NSArray? 【发布时间】:2017-02-08 13:15:19 【问题描述】:

下面的代码是否改变了 _items 数组中 item

CustomItem *item = _items.lastObject;

item.value = @"something";

[self saveItemsToDisk];

或者我是否必须删除 item 并将其重新添加到数组中?

CustomItem *item = _items.lastObject;

item.value = @"something";

[_items removeObject:_items.lastObject];

[_items addObject:item];

[self saveItemsToDisk];

【问题讨论】:

第一个选项应该有效。 @Vulkan 【参考方案1】:

代码会改变数组中item的值,不需要再次添加。

【讨论】:

【参考方案2】:

不,您不需要删除阵列。它会改变值

【讨论】:

以上是关于NSArray 中的 NSObject 的属性是不是会发生变化,或者是不是必须再次将它们添加到 NSArray?的主要内容,如果未能解决你的问题,请参考以下文章

从 NSArray 动态生成 NSPredicate

NSDictionary  NSSet和NSArray的区别

用法总结:NSArray,NSSet,NSDictionary-备用

IOS 遍历未知对象的属性和方法

oc nsarray 怎么写入文件

SwiftUI 中的计算(NSObject)属性不会更新视图