NSArray

不可变数组 NSArray

C语言的数组里面只能存放同一种基本数据类型

OC的数组可以存放多种类型的数据(必须是对象类型,不能存放简单地数据类型)

注意:我们在实际编程过程中  尽量在一个数组里面存放同一种类型

1、创建一个数组

        NSArray *array = @[@"pxd", xw, zs, ww, hz];

        NSArray *array2 = @[array, @"zp", @"wc"];

 

        //创建一个空的数组

        NSArray *array3 = [NSArray array];

        NSArray *array4 = [[NSArray alloc] init];

        

        NSArray *array5 = [NSArray arrayWithArray:array];

        NSArray *array6 = [[NSArray alloc] initWithArray:array];

        

        NSArray *array7 = [NSArray arrayWithObject:xw];

        

        //创建的时候初始化一部分数据

        //数据结尾为nil 不能向数组里面添加一个值为nil的对象

        NSArray *array8 = [NSArray arrayWithObjects:xw, zs, nil];

        NSArray *array8_1 = [[NSArray alloc] initWithObjects:xw, zs, nil];

        NSLog(@"....%@", array8);

 

2、获取数组元素的个数 count

  NSLog(@”the count of array8 is%ld“,[array8 count]);

 

3、获取索引位置对应的元素(对象)

  //2.访问数组里面的某个元素 使用索引值访问index

  Person *temp = [array8 objectAtIndex:0];

        

        //3.获取数组里面的最后一个元素

        Person *temp2 = [array8 lastObject];

        Person *temp3 = [array8 firstObject];

 

4、遍历数组

        for (int i = 0; i < array8.count; i++){

            NSLog(@"%@", [array8 objectAtIndex:i]);

        }

        

        //使用快速循环

        for (Person *p in array8){

            NSLog(@"%@", p);

        }

 

5、判断数组里面是不是包含某一个对象

        if ([array8 containsObject:@"pxdadfafa"]) {

            NSLog(@"YES");

        } else{

            NSLog(@"NO");

        }

 

6、获取某个对象在数组里面的索引值

NSInteger index = [array8 indexOfObject:@"pxdafafa"];

 

NSMutableArray 可变数组

1、创建

    NSMutableArray *mArray = [NSMutableArray arrayWithCapacity:3];

 

2、增加 addObject

   [mArray addObject:xw]; 

        [mArray addObject:zs];

 

3、插入元素 insertObjectAtIndex:

    [mArray insertObject:array5 atIndex:0];

 

4、删除元素

        [mArray removeObject:xw];

        [mArray removeObjectAtIndex:0];

        

        //删除所有

        [mArray removeAllObjects];

 

5、交换元素的位置

    [mArray exchangeObjectAtIndex:0 withObjectAtIndex:1];

原文地址:https://www.cnblogs.com/zhaopengs/p/5070152.html