OC中的数组

NSArray / NSMutableArray

在OC中,我们用’NSArray’类和’NSMutableArray’类来表示数组,其中‘NSArray’类是‘NSMuableArray’类的父类。在OC中,我们的数组是有序的’对象’,即我们的数组只能存储’对象’。在OC中我们的数组中元素类型不能是‘int’、‘float’、‘CGPoint’等类型。

NSArray(不可变数组)

//初始化
//创建一个空的不可变的数组
NSArray *array1 = [[NSArray alloc] init];
NSArray *array2 = [NSArray array];
//创建一个里面只有一个元素的不可变数组
NSArray *array3 = [NSArray arrayWithObjects:@”zhoudu”];
//创建一个里面有多个元素的不可变数组
NSArray *array4 = [NSArray arrayWithObjects:@”zhoudu”,@”xingzhenyu”,@”panzhijing”,@”gugenggeng”, nil];
//新语法
NSArray *array5 = @[@”zhoudu”];
NSArray *array6 = @[@”zhoudu”,@”xingzhenyu”,@”panzhijing”,@”gugenggeng”];

    //
    NSArray *array7 = [NSArray arrayWithArray:array2];

    //从本地文件中读取数组
    NSArray *array8 = [NSArray arrayWithContentsOfFile:@""];
    //从网络文件中读取数组
    NSArray *array9 = [NSArray arrayWithContentsOfURL:[NSURL URLWithString:@""]];
    //求数组中元素的个数
    NSInteger count = array6.count;
    //数组的操作
    //访问数组中的元素
    //访问array6中的第一个元素
    NSString *str = [array6 objectAtIndex:0];
    for (int i = 0; i < array6.count; i ++) {
        NSLog(@"数组中第%d个元素为%@",i,[array6 objectAtIndex:i]);
    }


    //新语法访问数组中的元素
    NSString *str2 = array6[0];

    //NSNumber类的新语法
    NSNumber *number1 = [NSNumber numberWithInt:5];
    NSNumber *number2 = @5;
    NSNumber *number3 = @YES;
 NSArray *array = @[@5,@12];

    //通过数组的元素找下标
    NSUInteger index = [array6 indexOfObject:@"zhoudu"];
    NSLog(@"index = %lu",(unsigned long)index);
    //判断数组中是否存在某个元素

    BOOL flag = [array6 containsObject:@"zhoudu"];

    //向不可变数组中增加一个元素,生成一个新的数组
    NSArray *newArray1 = [array6 arrayByAddingObject:@"方剑轻"];
    NSArray *newArray2 = [array6 arrayByAddingObjectsFromArray:array6];

    NSString *string = [newArray1 componentsJoinedByString:@"^^^___^^^!!"];
    NSLog(@"string = %@",string);
    NSArray *array11 = @[@"123",@"456",@"789",@"000"];
    NSString *string12 = [array11 componentsJoinedByString:@"-"];
    NSLog(@"string = %@",string12);
NSMutableArray(可变数组)

//初始化方法
//初始化一个空的可变数组
NSMutableArray *mArray1 = [NSMutableArray array];
NSMutableArray *mArray2 = [NSMutableArray arrayWithObject:@”1”];

    NSMutableArray *mArray3 = [NSMutableArray arrayWithObjects:@"1",@"2",@"3",@"4", nil];
    NSMutableArray *mArray4 = [NSMutableArray arrayWithObject:mArray2];
    //可变数组独有的初始化方法
    NSMutableArray *mArray5 = [NSMutableArray arrayWithCapacity:10];
    NSMutableArray *mArray6 = [NSMutableArray arrayWithContentsOfFile:@""];
    //在数组末尾增加一个元素
    [mArray3 addObject:@"5"];
    //在数组指定位置增加一个元素
    [mArray3 insertObject:@"vincent" atIndex:3];
    //替换,将数组指定位置上的元素替换成用户想要元素
    [mArray3 replaceObjectAtIndex:2 withObject:@"sb"];
    //交换,将数组指定位置上的两个元素交换位置
    [mArray3 exchangeObjectAtIndex:1 withObjectAtIndex:4];
    //删除
    //删除指定元素
    [mArray3 removeObject:@"1"];
    //删除指定位置上的元素
    [mArray3 removeObjectAtIndex:2];
    //删除数组中最后一个元素
    [mArray3 removeLastObject];
    //删除数组中所有元素
    [mArray3 removeAllObjects];

    for (NSString *ele in mArray3) {
        NSLog(@"ele = %@",ele);
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值