標籤:
在Cocoa Foundation中NSArray和NSMutableArray 用於對象有序集合,NSArray和NSMutableArray類最大的區別是:NSArray是不可變,NSMutableArray是可變的。它們只能儲存Cocoa對象(NSObject對象),如果想儲存一些原始的C資料(如:int,float,double,BOOL等),則需要將這些原始的C資料封裝NSNumber類型,它們的下標是從0開始,下面是NSArray和NSMutableArray類的一些常用初級操作。
1.NSArray 初始化
NSArray *array = [[NSArray alloc] initWithObjects:@"SuperDo.Horse",@"SuperDo.Mount",@"SuperDo.AC",nil];//用現有的數組進行初始化NSArray *array1 = [NSArray arrayWithArray:array];
2.NSArray 快速枚舉
NSArray *array = [[NSArray alloc] initWithObjects:@"SuperDo.Horse",@"SuperDo.Mount",@"SuperDo.AC",nil];for (NSString *str in array) { NSLog(@"%@",str);}
3.NSMutableArray 簡單排序
NSMutableArray*array = [[NSMutableArray alloc] initWithObjects:@"SuperDo.Horse",@"SuperDo.Mount",@"SuperDo.AC",nil];//數組中的元素按照字串大小排序:[array sortUsingSelector:@selector(compare:)];NSLog(@"sorted array:%@",array);
4.字串 ---> NSArray
NSString *string = [[NSString alloc] initWithString:@"A|B|C|D"];NSLog(@"string:%@",string);NSArray *array = [string componentsSeparatedByString:@"|"];NSLog(@"array:%@",array);
5.NSArray ---> 字串
NSArray *array = [[NSArray alloc] initWithObjects:@"A",@"B",@"C",@"D",nil];NSString *string = [array componentsJoinedByString:@"|"];NSLog(@"string:%@",string);
6.元素操作
//插入元素NSMutableArray *array = [NSMutableArray arrayWithObjects: @"One",@"Two",@"Three",nil];[array addObject:@"Four"];NSLog(@"array:%@",array);//刪除元素[array removeObjectAtIndex:1];NSLog(@"array:%@",array);//枚舉元素(從前向後)NSEnumerator *enumerator = [array objectEnumerator];id next;while (next = [enumerator nextObject]) { NSLog(@"object------》:%@",next);}//枚舉元素(從後向前)NSEnumerator *enumerator = [array reverseObjectEnumerator];id object;while (object = [enumerator nextObject]) { NSLog(@"object------》:%@",object);}
本站文章為 寶寶巴士 SD.Team 原創,轉載務必在明顯處註明:(作者官方網站: 寶寶巴士 )
轉載自【寶寶巴士SuperDo團隊】 原文連結: http://www.cnblogs.com/superdo/p/4594178.html
[Objective-C] 008_Foundation架構之NSArray與NSMutableArray