1

在Objective C中-字典和数组有什么区别?字典是否与 key : value 一起使用(其中 Key 可以是任何对象),而数组是 id : value (其中 id 是整数)?

谢谢

4

1 回答 1

2

大批

在 Objective-C 中,数组是一种可以存储对象类型的集合。它可以存储任何类型的对象。存储在数组中的对象链接到它们的索引号。

例如。如果您创建一个数组并插入第一个对象,它将存储在“索引 0”中,并且索引号将从 0,1,2....n 继续增加

使用“NSMutableArray”创建一个可以修改的数组。

例子,

NSMutableArray *array = [NSMutableArray alloc] init];
[array addObject:@"Tom"];
[array addObject:@"Cat"];

因此,在索引 0 处,您将拥有“Tom”。而且,在索引 1 处,您将拥有“猫”。

字典

在 Objective-C 中,字典是一种存储“键值”对的集合。“键”是 ID 类型,因此您可以输入任何对象作为值的键。

使用“NSMutableDictionary”创建可以修改的字典。

例子,

NSMutableDictionary *dictionary = [NSMutableDictionary alloc] init];
[dictionary setObject:@"Tom" forkey:@"name"];
[dictionary setObject:@"Cat" forKey:@"animal"];

数组和字典之间的主要区别在于字典中对象的顺序发生了变化,而在数组中存储的对象的顺序是连续的。

[编辑]

由于关于这个答案已经进行了相当多的讨论,我会明确指出,数组不会像一些评论所说的那样重新创建。

数组/字典的大小会动态增加以适应集合中的新元素。

于 2012-09-19T05:28:20.073 回答