OC篇学习-数组

来源:互联网 发布:韩国整容 知乎 编辑:程序博客网 时间:2024/06/06 00:41

在OC中数组分为可变数组和不可变数组。

//   不可变数组 创建之后不可以修改  没有添加 删除 交换 等元素的API方法

    

//    NSArray *array = [[NSArray alloc]initWithObjects:@"123",@"456",@"789", nil];

//    NSLog(@"%@",[array objectAtIndex:0]);

//    NSLog(@"%@",array[0]);

//    

//    NSArray *array2 = [NSArray arrayWithObjects:@"1234",@"4567",@"3456", nil];

//    NSLog(@"%@",array2);

//    

//    NSArray *array3 = [[NSArray alloc]initWithArray:array2];

//    NSLog(@"%@",array3[1]);

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

//    NSLog(@"%@",array4[0]);

    

    

    

//    遍历

//    array.count 数组元素的个数

//    NSArray *array =[NSArray arrayWithObjects:@"123",@"456",@"789", nil];

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

//        NSLog(@"%@",array[i]);

//    }

//    

//    前面的类型取决于 后边的数组装的是什么来类型的元素

//    for(NSString * string in array)

//    {

//        NSLog(@"%@",string);

//    }

    

    

    

    

    

//    可变数组NSMutableArray

//    创建之后 可以对其进行修改 增加 修改删除 元素等功能

//    改变的仍是自身

    

////    直接给定几个元素

//    NSMutableArray *array = [[NSMutableArray alloc ]initWithObjects:@"123",@"456",@"789", nil];

////    NSLog(@"%@",array[3]);  数组越界;有不存在的下标;

////    增加元素

//    [array addObject:@"000"];

//    NSLog(@"%@",array[3]);

////    删除元素

//    [array removeObject:@"123"];

//    NSLog(@"%@",array);

    

//    在以后开发中 可变数组一上来只是进行开辟空间 并不会赋值初值 赋值初值根据需求来定添加什么类型的元素

//    NSMutableArray *array = [NSMutableArray arrayWithCapacity:0];

    

    

    

    

    

//    NSMutableArray *array2 =[NSMutableArray array];

////    数组必须进行初始化才能进行添加元素

//    [array2 addObject:@"123"];

//    [array2 addObject:@"456"];

//    [array2 addObject:@"789"];

//    NSLog(@"%@",array2);

////    根据数组中某个下标来删除元素

//    [array2 removeObjectAtIndex:2];

////    插入到数组指定下标处;

//    [array2 insertObject:@"000" atIndex:1];

//    NSLog(@"%@",array2);

////把某个下标的元素与另一个下标的元素交换

//    [array2 exchangeObjectAtIndex:1 withObjectAtIndex:2];

//    NSLog(@"%@",array2);


//    数组进行删除 需要倒着删

//    正着删会导致数组内下标混乱

    NSMutableArray *array =[NSMutableArrayarray];

    [array addObject:@"123"];

    [array addObject:@"456"];

    [array addObject:@"789"];

//    for (NSInteger i =array.count -1;  i>=0; i--) {

//        [array removeObjectAtIndex:i];

//

//    }

    

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

//        NSLog(@"%lu",(unsigned long)array.count);

//        [array removeObjectAtIndex:i];

//    }

//    NSLog(@"%@",array);

//    NSLog(@"%ld",array.count);

    

    forin 只是对数组进行遍历 不能对数组进行其他操作;

   

    


0 0