NSArray和NSDictionary

----->NSArray

1.创建数组

NSArray *array1 = [[NSArray alloc] initWithObjects:@"One",@"Two",@"Three",@"Four",nil];

NSArray*array2 = [[NSArray alloc] arrayWithArray:array1];

2.常用方法

--获取数组长度

NSInteger count = [array1 count];

--根据下标进行访问

NSString * string = [array1 objectAtIndex: 2];

--在原来的数组追加对象到一个新的数组

NSArray * addArr = [array1arrayByAddingObject:@"Five"];

--用指定的字符串将数组元素串接起来

NSString * string = [array1 componentsJoinedByString:@","];

-- 数组中是否包含某对象

BOOL isHas = [array1 containsObjet:@"sss"];

--查询指定对象在数组中的位置,没有返回NSNotFound


NSInteger index = [array1indexOfObject:@"One"];

--获取数组中的最后一个元素

NSString * lastString = [array1 lastObject];

----->NSMutableArray

可变数组继承自NSArray

1.创建数组

NSMutableArray *array = [ NSMutableArray arrayWithCopacity:4];

2.常用方法

--向数组中添加元素

[array addObject:@"Five"];

--向数组指定下标插入元素

[array insertObject:@"Six",atIndex:0];

--移除最后一个元素

[array removeLastObject];

--移除指定元素

[array removeObject:@"One"];

--移除指定下标元素

[array removeObjectAtIndex:1];

--向数组中添加数组

[array addObjectsFromArray:array1];

--替换指定下标元素

[array replaceObjectAtIndex:0 withObject:@"lala"];

--移除所有对象

[array reomoveAllObjects];

3.遍历数组

常规

NSArray *array = [NSArray arrayWithObjects:@"a",@"b",@"c",nil];

int len = [ array count];

for(int i = 0 ;i < len i++)

{

      NSLog(@"%@",[array objectAtIndex:i]);

}

快速枚举

NSMutableArray *newArray =[[NSMutableArray alloc] init];
NSArray *oldArray = [NSArray arrayWithObjects:
@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];
NSLog(@"oldArray:%@",oldArray);

for(id obj in oldArray)
{
   [newArray addObject: obj];
}
NSLog(@"newArray:%@", newArray);

[newArray release];

----->NSDictionary

1.创建字典

NSDictionary *dictionary = [[NSDictionary alloc] initWithObjectsAndKeys:@"One",@"1",@"Two",@"2",@"Three",@"3",nil];

--初始化字典,包含其它字典

NSDictionary *dic = [NSDictionary dictionaryWithDictionary:otherdic];

--已文件内容初始化字典

NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:path];

--获取字典数量

NSInteger count = [dic count];

--通过key获取对应的vaule对象

NSObject * obj = [dic objectForKey:@"key"];

--将字典的key转换成枚举对象,用于遍历

NSEnumerator* enumerator = [dic KeyEnumerator];

--获取所有键的合集

NSArray * keys = [dic allKeys];

--所有值的集合

NSArray * values = [dic allValues];

----->NSMutableDictionary

--创建可变字典

NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];

添加字段

[dictionary setObject:@"One" forKey:@"1"];

--删除指定字典

[dictionary removeObjectForKey:@"1"];

根据key数组删除

[dictionary removeObjectsForKeys:array];

--遍历字典

for( id key in dic)

{

   id obj = [dic objectForKey:key];

}

通过枚举来枚举

NSEnumerator *enum = [dic KeyEnumerator];

id key = [enum nextObject];

while(key)

{

    id obj = [dic objectForKey:key];

    key = [enum nextObject];

}

----->NSValue

NSValue可包装任意值

+(NSValue *) valueWithBytes:(const void*) value objCtype:(const char*)type

NSRect rect = NSMakeRect(1,2,30,40);

NSValue *value;

value = [NSValue valueWithBytes:&rect objCType:@encode(NSRect)];

[vaule getValue:&rect];

一些结构体包装

+(NSValue *) valueWithPoint:(NSPoint) point;

+(NSValue *) valueWithSize:(NSSize) size;

+(NSValue *) valueWithRect:(NSRect) rect;

-(NSPoint) pointValue;

-(NSSize) sizeValue;

-(NSRect) rectValue;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值