NSArray和NSMutableArray的使用总结
NSMutableArray *MutableArray = [NSMutableArray alloc] arrayWithArray:array] //创建可变数组(从现有的数组上建立)
[MutableArray removeObjectAtIndex:1] //删除数组中指定位置的的元素
[MutableArray replaceObjectAtIndex:1 withObject:@"tihuan"] //在相应位置
for(NSString *string in MutableArray)
{ NSLog(@"string:%@",string);} //快速枚举数组中的值
/*******************************************************************************************
 NSArray
 *******************************************************************************************/
/*---------------------------创建数组 ------------------------------*/
 //NSArray *array = [[NSArray alloc] initWithObjects:@"One",@"Two",@"Three",@"Four",nil];
 /*-------------------------- 从一个数组拷贝数据到另一数组(可变数级)----------------------------*/
//arrayWithArray:
 //NSArray *array1 = [[NSArray alloc] init];
 NSMutableArray *MutableArray = [[NSMutableArray alloc] init];
 NSArray *array = [NSArray arrayWithObjects:@"a",@"b",@"c",nil];
 NSLog(@"array:%@",array);
 MutableArray = [NSMutableArray arrayWithArray:array];
 NSLog(@"MutableArray:%@",MutableArray);
 array1 = [NSArray arrayWithArray:array];
 NSLog(@"array1:%@",array1);
//Copy
//id obj;
 NSMutableArray *newArray = [[NSMutableArray alloc] init];
 NSArray *oldArray = [NSArray arrayWithObjects: @"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];
NSLog(@"oldArray:%@",oldArray);
 for(int i = 0; i < [oldArray count]; i++)
 { 
 obj = [[oldArray objectAtIndex:i] copy];
 [newArray addObject: obj];
 }
 // 
 NSLog(@"newArray:%@", newArray);
 [newArray release];
 //快速枚举
//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];
 //Deep copy
//NSMutableArray *newArray = [[NSMutableArray alloc] init];
 NSArray *oldArray = [NSArray arrayWithObjects:@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil]; 
 NSLog(@"oldArray:%@",oldArray); 
 newArray = (NSMutableArray*)CFPropertyListCreateDeepCopy(kCFAllocatorDefault, (CFPropertyListRef)oldArray, kCFPropertyListMutableContainers);
 NSLog(@"newArray:%@", newArray);
 [newArray release];
 //Copy and sort
//NSMutableArray *newArray = [[NSMutableArray alloc] init];
 NSArray *oldArray = [NSArray arrayWithObjects: @"b",@"a",@"e",@"d",@"c",@"f",@"h",@"g",nil]; 
 NSLog(@"oldArray:%@",oldArray);
 NSEnumerator *enumerator;
 enumerator = [oldArray objectEnumerator];
 id obj;
 while(obj = [enumerator nextObject])
 {
 [newArray addObject: obj];
 }
 [newArray sortUsingSelector:@selector(compare:)];
 NSLog(@"newArray:%@", newArray);
 [newArray release];
/*--------------------------- 切分数组------------------------------*/
//从字符串分割到数组- componentsSeparatedByString:
 NSString *string = [[NSString alloc] initWithString:@"One,Two,Three,Four"];
 NSLog(@"string:%@",string); 
 NSArray *array = [string componentsSeparatedByString:@","];
 NSLog(@"array:%@",array);
 [string release];
 //从数组合并元素到字符串- componentsJoinedByString:
 NSArray *array = [[NSArray alloc] initWithObjects:@"One",@"Two",@"Three",@"Four",nil];
 NSString *string = [array componentsJoinedByString:@","];
 NSLog(@"string:%@",string);
/*******************************************************************************************
 NSMutableArray
 *******************************************************************************************/
 /*--------------- 给数组分配容量----------------*/
 //NSArray *array;
 array = [NSMutableArray arrayWithCapacity:20];
/*-------------- 在数组末尾添加对象----------------*/
 //- (void) addObject: (id) anObject;
 //NSMutableArray *array = [NSMutableArray arrayWithObjects: @"One",@"Two",@"Three",nil];
 [array addObject:@"Four"];
 NSLog(@"array:%@",array);
/*-------------- 删除数组中指定索引处对象----------------*/ 
 //-(void) removeObjectAtIndex: (unsigned) index; 
 //NSMutableArray *array = [NSMutableArray arrayWithObjects:@"One",@"Two",@"Three",nil];
 [array removeObjectAtIndex:1];
 NSLog(@"array:%@",array);
/*------------- 数组枚举---------------*/ 
 //- (NSEnumerator *)objectEnumerator;从前向后
 //NSMutableArray *array = [NSMutableArray arrayWithObjects:@"One",@"Two",@"Three",nil];
 NSEnumerator *enumerator;
 enumerator = [array objectEnumerator];
id thingie;
 while (thingie = [enumerator nextObject]) {
 NSLog(@"thingie:%@",thingie);
 }
 //- (NSEnumerator *)reverseObjectEnumerator;从后向前
 //NSMutableArray *array = [NSMutableArray arrayWithObjects:@"One",@"Two",@"Three",nil];
 NSEnumerator *enumerator;
 enumerator = [array reverseObjectEnumerator];
id object;
 while (object = [enumerator nextObject]) {
 NSLog(@"object:%@",object);
 }
 //快速枚举
 //NSMutableArray *array = [NSMutableArray arrayWithObjects:@"One",@"Two",@"Three",nil];
 for(NSString *string in array)
 {
 NSLog(@"string:%@",string);
 }
 
                    
                
 
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号