OC基础 可变数组与不可变数组的使用

OC基础 可变数组与不可变数组的使用

1.不可变数组

1.1不可变数组的创建

        //实例方法
        NSArray *array = [[NSArray alloc] initWithObjects:@"1",@"2",@"3", nil];
        NSLog(@"%@",array);
        //类方法
        NSArray *array1 = [NSArray arrayWithObjects:@"1",@"2",@"3", nil];
        
        //实例方法
        NSArray *array2 = [[NSArray alloc] initWithArray:array];
        NSLog(@"%@",array2);
NSArray
*array3 = [NSArray arrayWithArray:array2];

 

1.2不可变数组的常用操作

        //获取元素的个数
        NSInteger count = [array count];
        //获取数组某一个位置的元素
        NSString *str = [array objectAtIndex:0];
        //获取某个元素在数组里面的索引(位置)
        NSInteger index = [array indexOfObject:@"2"];
        NSLog(@"%ld",index);
        
        //判断数组中是否包含某个元素
        BOOL b = [array containsObject:@"1"];
        //获取数组的最后一个元素
        NSString *str2 = [array lastObject];
        //以“-”将数组元素拼接成字符串
        NSString *str3 = [array componentsJoinedByString:@"-"];
        
        //数组的的遍历
        for(int i = 0;i<[array count];i++)
        {
            NSString *str = [array objectAtIndex:i];
            NSLog(@"%@",str);
        }
        //for in
        for(NSString *str in array)
        {
            NSLog(@"%@",str);
        }
        
        //数组的嵌套
        NSArray *array4 = [NSArray arrayWithObjects:array,array1,array2,array3, nil];
        NSLog(@"%@",array4);
        
        //嵌套数组的遍历
        //NSArray *array = [[NSArray alloc] initWithObjects:@"1",@"2",@"3", nil];
        for(NSArray *arr in array4)
        {
            for(NSString *str in arr)
            {
                NSLog(@"%@",str);
            }
        }

 

2.可变数组

2.1可变数组的创建

        //可变数组的创建
        NSMutableArray *muArr = [[NSMutableArray alloc] initWithObjects:@"1",@"2",@"3", nil];
        NSMutableArray *muArr1 = [[NSMutableArray alloc] initWithArray:muArr];
        NSMutableArray *muArr2 = [NSMutableArray array];

 

2.2可变数组的常用操作

        //可变数组添加元素
        //追加一个元素
        [muArr addObject:@"4"];
        //追加一组元素
        [muArr addObjectsFromArray:muArr1];
        NSLog(@"%@",muArr);
        //在指定位置插入元素
        [muArr insertObject:@"5" atIndex:4];
        
        
        //可变数组删除元素
        //删除最后一个元素
        [muArr removeLastObject];
        //删除指定位置的元素
        [muArr removeObjectAtIndex:4];
        NSLog(@"%@",muArr);
        //删除指定元素
        [muArr removeObject:@"1"];
        NSLog(@"%@",muArr);
        //删除所有元素
        [muArr removeAllObjects];
        NSLog(@"%@",muArr);

        //数组置空
        //muArr = nil;
        //NSLog(@"%@",muArr);

        [muArr addObjectsFromArray:muArr1];
        //@"1",@"2",@"3"
        //删除指定范围内的指定元素
        [muArr removeObject:@"2" inRange:NSMakeRange(0, 1)];
        //根据指定的数组来删除元素
        NSArray *array = [NSArray arrayWithObjects:@"2",@"4", nil];
        [muArr removeObjectsInArray:array];
        NSLog(@"%@",muArr);
        //删除指定范围内的所有元素
        [muArr removeObjectsInRange:NSMakeRange(0, 2)];
        
        //可变字符串的修改
        [muArr setArray:array];
        NSLog(@"%@",muArr);
        
        //替换某个位置的元素
        [muArr replaceObjectAtIndex:0 withObject:@"3"];
        //交换2个元素的位置
        [muArr exchangeObjectAtIndex:0 withObjectAtIndex:1];
        NSMutableArray *muArray = [[NSMutableArray alloc] initWithObjects:@"联通3GNET",@"移动3GCMNET",@"电信4GCTLTE",@"电信3GCTNET",@"联通4GWONET", nil];
        [muArray sortUsingSelector:@selector(compare:)];
        NSLog(@"%@",muArray);
        

 

2.3简单的创建数组

 NSArray *array = @[@"1",@"2",@"3"];
 NSLog(@"array = %@",array);

 

posted on 2015-12-20 22:38  卡丁车h  阅读(586)  评论(0编辑  收藏  举报

导航