IOS开发-ObjC-NSArray

Posted jiwangbujiu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS开发-ObjC-NSArray相关的知识,希望对你有一定的参考价值。

OC中数组分不可变数组(NSArray)和可变数组(NSMutableArray)。

不可变数组:

 1 //------------------------------不可变数组----------------------------------
 2 
 3 //    创建一个不可变数组
 4 
 5     NSNumber *number = [NSNumber numberWithInt:12];
 6 
 7     NSArray * arr= [NSArray arrayWithObjects:@"china",@"one", @"usa", number, nil];
 8 
 9     NSLog(@"%@",arr);
10 
11 //    array.count为数组元素个数
12 
13     NSLog(@"%@ \n数组arr元素个数为%lu",arr,(unsigned long)arr.count);
14 
15 
16 
17 //  判断数组中是否有某元素
18 
19     BOOL yesorno = [arr containsObject:@"usa"];
20 
21     NSLog(@"%d",yesorno);
22 
23     
24 
25 //  判断数组中是否有某元素方法2
26 
27     if ([arr containsObject:@"usa"]) {
28 
29         NSLog(@"里面有usa");
30 
31     }
32 
33     
34 
35 //    寻找某个元素在数组中的位置
36 
37     NSInteger indexnow = [arr indexOfObject:@"usa"];
38 
39     NSLog(@"%ld",(long)indexnow);
40 
41     
42 
43 //    找出最后一个元素
44 
45     id lastOut = [arr lastObject];
46 
47     NSLog(@"%@",lastOut);

可变数组:

 1 NSMutableArray *mArray = [NSMutableArray arrayWithObjects:@"one",@"two",@"three",@"four",@"five",@"six",@"seven", nil];
 2     [mArray addObject:@"eight"];//追加一个元素
 3     [mArray insertObject:@"zero" atIndex:0];//给指定位置插入一个元素
 4     [mArray removeObjectsInArray:arr];  //数组arr有的元素在mArray中删除
 5     [mArray removeObject:@"three" inRange:NSMakeRange(0, mArray.count)];//按照范围删除
 6     [mArray removeLastObject];  //删除最后一个元素
 7     [mArray removeObject:@"six"];  //删除特定元素
 8     [mArray removeObjectAtIndex:2];  //按照下标删除
 9     [mArray replaceObjectAtIndex:0 withObject:@"third"];//按照下标替换元素
10     [mArray exchangeObjectAtIndex:1 withObjectAtIndex:2];//按照下标交换元素
11      NSLog(@"%@",mArray);

 

数组的遍历:

 1 //------------------------------遍历数组----------------------------------
 2     
 3     
 4     NSMutableArray *mArray2 = [NSMutableArray arrayWithObjects:@"one",@"two",@"three",@"four",@"five",@"six",@"seven", nil];
 5     
 6 //    第一种遍历可变数组的方法--快速枚举法
 7     for (id x in mArray2) {
 8         NSLog(@"%@",x);
 9     }
10     
11 //    第二种遍历可变数组的方法--一般循环法
12     for (int i=0; i<mArray2.count; i++) {
13         NSLog(@"%@",[mArray2 objectAtIndex:i]);
14     }
15     
16 //    第三种遍历可变数组的方法--使用枚举器遍历
17     NSEnumerator *enu =[mArray2 objectEnumerator];
18     id x;
19     while (x=[enu nextObject]) {
20         NSLog(@"%@" ,x);
21     }
22     
23     
24 // 创建数组新写法@[@“”,@“”]
25     NSArray *array1d = @[@"sdf", @"df" ];
26     NSLog(@"%@",array1d);

 

以上是关于IOS开发-ObjC-NSArray的主要内容,如果未能解决你的问题,请参考以下文章

iOS NSArray 在索引处插入对象

IOS - 啥是 Swift 字符类型的 ObjC NSObject 等价物?

通过 BPM 将音轨分割成片段,并使用 Superpowered iOS 分析每个片段

ios数组基本用法和排序

iOS开发 - OC - duplicate symbol _OBJC / undefind symbol 错误的相关处理

IOS开发-ObjC-NSDictionary