天天看点

学习iOS【3】数组、词典和集合一、数组二、词典对象(dictionary)三、集合对象(set)

arrayWithObjects:使用一组对象作为元素创建不可变数组,注意数组的最后一个值需要指定为nil,用来表示参数的结束,但是nil并不会存储在数组中。

objectAtIndex:获取指定索引位置的数组元素。

@[elm1,elm2….elmn]:另外一种创建数组的简便方式,不需要以nil作为结尾元素;

array[index]:另外一种获取指定索引位置元素的方式。

count:数组中元素个数。

<a></a>

NSMutableArray array方法创建空的可变数组,数组元素个数未定,可以随着需要增长;

addObject:向可变数组结尾添加元素;

insertObject:obj atIndex:i :将对象obj插入数组的第i个元素。

removeObjectAtIndex:i  删除数组中第i个元素。

replaceObjectAtIndex:i withObject:obj 将数组中序号为i的对象用obj替换。

使用NSLog格式化%@可以显示整个数组,它实际上会调用每个元素的description方法。

词典也有两种类型:不可变词典NSDictionary和可变词典NSMutableDictionary。

NSDictionary dictionaryWithObjectsAndKeys:创建不可变词典,参数是值-键对组合(注意顺序),以nil结尾。

allKeys:返回一个数组包含词典中的所有键;

count:返回词典中的记录数;

objectForKey:返回key的值对象。

NSMutableDictionary dictionary:创建一个可变词典;

setObject:forKey:把键值对添加到可变词典中;

removeAllObjects:删除词典中所有的记录;

removeObjectForKey:删除词典中的指定键key对应的记录;

set是一组单值对象集合。

setWithObjects:以一个nil为结尾的对象数组创建一个集合。

containObject:检测某个对象是否包含在集合中。

count:集合成员个数。

addObject:向集合中添加对象;

removeObject:从集合中删除对象;

removeAllObjects:删除集合中所有对象;

unionSet:求两个集合的并集;

intersectSet:求两个集合的交集

首先我们自定义分类为NSSet添加自定义方法print。

NSSet+Printing.h

NSSet+Printing.m

main.m