Objective-C基础:数据结构与操作
1. 基础库概述
Foundation是支持所有Objective - C开发的底层库,它提供了基本的数据结构,如字符串、数组、字典等通用对象,以及与之相关的操作方法。与高级的Cocoa库相比,Foundation在应用程序中处于较低的抽象层次。Cocoa和UIKit主要关注应用程序、视图和用户输入,而Foundation则专注于数据组织的底层任务。
2. 可变与不可变对象
2.1 基本概念
几乎每个Foundation中的数据存储类都有可变(mutable)和不可变(immutable)两种形式。可变对象在创建后可以修改,而不可变对象一旦创建就不能更改。
以 NSArray 类为例,它将对象存储为列表,但由于其不可变性,不能向现有 NSArray 中添加、删除或替换对象。如果需要更改内容,则需使用 NSMutableArray 类。
2.2 存在原因
- 效率更高 :不可变对象知道其在内存中的布局永远不会改变,因此更高效。
- 内容安全 :当将不可变对象传递给另一个对象时,可以确保其内容不会被该对象更改。
2.3 相互转换
可以创建现有对象的可变版本,反之亦然。例如,从 NSArray 创建 NSMutableArray 的代码如下:
超级会员免费看
订阅专栏 解锁全文
1419

被折叠的 条评论
为什么被折叠?



