1.OC的数组成员是任意的对象指针 与C中的链表结构类似(以nil结尾) 一切的数组操作不能越界 OC的数组分为不可变数组 NSArray 可变数组 NSMutableArray - NSArray * array = [[NSArray alloc]initWithObjects:@"one",@"two",@"three", nil];
- NSLog(@"%@",[array objectAtIndex:0]);
- NSLog(@"%ld",[array count]);
- for (i = 0; i < [array count]; i++) {
- NSLog(@"%@",[array objectAtIndex:i]);
- }
- NSLog(@"%@",array);
- NSArray * array1 = [[NSArray alloc]initWithArray:array];
- NSArray * arry2 = [NSArray arrayWithArray:array];
- NSEnumerator * enumer = [array objectEnumerator];
-
-
- id obj;
-
- while (obj = [enumer nextObject]) {
- NSLog(@"%@",obj);
- }
-
- for(id ob in array){
- NSLog(@"%@",ob);
- }
-
- NSEnumerator * enumer1 = [array reverseObjectEnumerator];
- while (obj = [enumer1 nextObject]) {
- NSLog(@"%@",obj);
- }
- if ([obj isKindOfClass:[Dog class]])
- if ([obj isMemberOfClass:[Dog class]]) {
- }
2.不可变数组 - -------查找
-
- NSArray * array = [[NSArray alloc]initWithObjects:@"one",@"two",@"three",@"one", nil];
- NSUInteger index = [array indexOfObject:@"one123"];
- index = [array indexOfObject:@"one" inRange:NSMakeRange(1, 3)];
- if (index != NSNotFound) {
- NSLog(@"%ld",index);
- }
- ----抽取 组成新的数组
- NSArray * array1 = [array objectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)]];
- 《数字集合》
- NSIndexSet这是个数字集合类
- [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)]产生一个数字集合
3.可变数 - NSMutableArray * array = [[NSMutableArray alloc]initWithObjects:@"one",@"two",@"three",@"four", nil];
- [array addObject:@"five"];
- [array insertObject:@"six" atIndex:5];
- [array removeObject:@"six"];
- [array removeObject:@"two" inRange:NSMakeRange(0, 3)];
- [array removeLastObject];
- [array removeAllObjects];
- [array replaceObjectAtIndex:3 withObject:@"ios"];
- [array exchangeObjectAtIndex:0 withObjectAtIndex:3];
4.字符串分割与拼接 -
- -------分割
- NSString * ptr = @"I am a man";
- NSArray * array = [ptr componentsSeparatedByString:@" "];
- NSMutableArray * array1 = [NSMutableArray arrayWithArray:array];
- NSArray * array2 = [ptr componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@", "]];
- 《字符集合》
- NSCharacterSet 这是个字符集合类
- [NSCharacterSet characterSetWithCharactersInString:@", "]
- -------拼接
- NSString * str = [array componentsJoinedByString:@" "];
- 若分割条件出现在开头或者结尾,则会出现空串@"",如果不需要,则需要转化成NSMutableString对空串进行处理
- func1: [array1 removeObject:@""];
- func2: for(id obj in array1){
- if([obj length] == 0)
- if([obj isEqualToString:@""])
- }
|