NSArray,NSDictionary只能读,不能写。NSMutableArray,NSMutableDictionary可读写
NSMutableArray的主要方法如下:
增加:addobject:
删除:removeAllObjects,RemoveObjecAtIndex,RemoveObject
修改:replaceObjectAtIndex:withObject:
查看:ObjectAtIndex:
例子:
NSArray *array = [[NSArray alloc]initWithObjects:@"One",@"Two",@"Three", nil];
for (int i=0; i<[array count]; i++) {
NSString *str = [array objectAtIndex:i];
NSLog(@"%@ \n",str);
}
NSMutableArray *multArray = [[NSMutableArray alloc]init];
//zeng
[multArray addObject:@"One"];
[multArray addObject:@"Two"];
[multArray addObject:@"Three"];
[multArray addObject:@"Four"];
[multArray addObject:@"Five"];
//cha
for (int i=0; i<[multArray count]; i++) {
NSString *str = [multArray objectAtIndex:i];
NSLog(@"%@ \n",str);
}
//shan
[multArray removeObjectAtIndex:2];
for (int i=0; i<[multArray count]; i++) {
NSString *str = [multArray objectAtIndex:i];
NSLog(@"%@ \n",str);
}
//shan
[multArray removeObject:@"Four"];
for (int i=0; i<[multArray count]; i++) {
NSString *str = [multArray objectAtIndex:i];
NSLog(@"%@ \n",str);
}
//shan
NSLog(@"TEST:::::::::::::::::5");
[multArray removeObject:@"Four111"];
for (int i=0; i<[multArray count]; i++) {
NSString *str = [multArray objectAtIndex:i];
NSLog(@"%@ \n",str);
}
//gai
[multArray replaceObjectAtIndex:1 withObject:@"TwoTwoTwo"];
for (int i=0; i<[multArray count]; i++) {
NSString *str = [multArray objectAtIndex:i];
NSLog(@"%@ \n",str);
}
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithInt:0],@"Zero", array,@"array", nil];
//du
NSNumber *number = [dict objectForKey:@"Zero"];
NSArray *myArray = [dict objectForKey:@"array"];
//NSString *str1 = [myArray objectAtIndex:100];//err 会crash
//err
NSArray *errArray = [dict objectForKey:@"XXXX"];
NSArray *errArray1 = [dict objectForKey:@"Zero"];
NSString *string = @"1,2,3,4,5,6,";
NSArray *strArray = [string componentsSeparatedByString:@","];
for (int i = 0; i<[strArray count]; i++) {
NSLog(@"%@ \n",[strArray objectAtIndex:i]);
}
注意:ObjectAtIndex,如果越界,则会Crash
ObjectForKey,如果key不存在,则只会让其为空