/*---------------------------创建数组------------------------------*/ //NSArray *array = [[NSArray alloc] initWithObjects: @"One",@"Two",@"Three",@"Four",nil]; self.dataArray = array; [array release]; //- (unsigned) Count;数组所包含对象个数; NSLog(@"self.dataArray cound:%d",[self.dataArray count]); //- (id) objectAtIndex: (unsigned int) index;获取指定索引处的对象; NSLog(@"self.dataArray cound 2:%@",[self.dataArray objectAtIndex:2]); /*--------------------------从一个数组拷贝数据到另一数组(可变数级)----------------------------*/ //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); } /******************************************************************************************* NSDictionary /*------------------------------------创建字典------------------------------------*/ //- (id) initWithObjectsAndKeys; //NSDictionary *dictionary = [[NSDictionary alloc] initWithObjectsAndKeys:@"One",@"1",@"Two",@"2",@"Three",@"3",nil]; NSString *string = [dictionary objectForKey:@"One"]; NSLog(@"string:%@",string); NSLog(@"dictionary:%@",dictionary); [dictionary release]; /******************************************************************************************* NSMutableDictionary /*------------------------------------创建可变字典------------------------------------*/ //创建 NSMutableDictionary *dictionary = [NSMutableDictionary dictionary]; //添加字典 [dictionary setObject:@"One" forKey:@"1"]; [dictionary setObject:@"Two" forKey:@"2"]; [dictionary setObject:@"Three" forKey:@"3"]; [dictionary setObject:@"Four" forKey:@"4"]; NSLog(@"dictionary:%@",dictionary); //删除指定的字典 [dictionary removeObjectForKey:@"3"]; NSLog(@"dictionary:%@",dictionary);