首页 > 编程语言 > 详细

Snail—OC学习之可变数组NSMutableArray

时间:2015-07-22 13:10:29      阅读:215      评论:0      收藏:0      [点我收藏+]

可变数组NSMutableArray 继承于 NSArray  NSArray的所有方法都适用于可变数组

下面是可变数组的一些初始化方法

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{

    @autoreleasepool {
        
        //可变数组继承于不可变数组
        //空的可变数组
        NSMutableArray * array = [[NSMutableArray alloc] init];
        //传入0 就是新建了一个空数组
        NSMutableArray * array2 = [[NSMutableArray alloc] initWithCapacity:0];
        //以一个数组来创建新的数组
        NSMutableArray * array3 = [[NSMutableArray alloc] initWithArray:array];
        
        //初始化添加对象 nil是占位的
        NSMutableArray * array4 = [[NSMutableArray alloc] initWithObjects:@"dsa",@"sd",nil];
        
        //简易初始化方法只适用于不可变数组
        //NSMutableArray * array5 = @[@"dsa",@"sd"];
        
        //类方法形式创建数组
        NSMutableArray * arr1 = [NSMutableArray array];
        NSMutableArray * arr2 = [NSMutableArray arrayWithArray:array];
        //一个长度为0的可变数组
        NSMutableArray * arr3 = [NSMutableArray arrayWithCapacity:0];
        NSMutableArray * arr4 = [NSMutableArray arrayWithObjects:@"sda",@"asd",nil];
        
    }
    return 0;
}

跟可变数组相似的原理,可变数组可以对其里面的元素进行相应的方法

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{

    @autoreleasepool {
        
        NSMutableArray * array = [[NSMutableArray alloc] init];
        
        //增加一个元素
        [array addObject:@"one1"];
        NSArray * array2 = @[@"sda",@"sad",@"one"];
        //添加多个元素
        [array addObjectsFromArray:array2];
        
        //删除所有跟参数相同的对象
        [array removeObject:@"one"];
        //删除指定位置的元素
        [array removeObjectAtIndex:0];
        //删除所有元素
        //如果是空数组 调用下面这个方法数据会报错
        [array removeAllObjects];
        
        //删除最后一个元素,但是空数组不会报错
        [array removeLastObject];
        //删除多个元素
        [array removeObjectsInArray:array2];
        
        //从下标开始,删除几个元素  从下标0开始删除 要删除两个
        NSRange range = NSMakeRange(0, 2);
        [array removeObjectsInRange:range];
        
    }
    return 0;
}

可变数组的一些关于元素的方法

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{

    @autoreleasepool {
        
        NSMutableArray * array = [[NSMutableArray alloc] init];
       
        //重置数组 参数可以是任何数组
        [array setArray:@[@"Snail",@"Daodao",@"Jian"]];
        
        //替换 将下标为1的元素替换成@"jianjian"
        [array replaceObjectAtIndex:1 withObject:@"Jian"];
        
        //交换 将下标为1的元素 跟下标为2的元素交换
        [array exchangeObjectAtIndex:1 withObjectAtIndex:2];
        
        //插入 下标2将会新插入一个元素 其他元素顺序往后移动
        [array insertObject:@"j" atIndex:2];
        
    }
    return 0;
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

Snail—OC学习之可变数组NSMutableArray

原文:http://blog.csdn.net/qq1791422018/article/details/47000511

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!