zoukankan      html  css  js  c++  java
  • Objective-C中NSArray和NSMutableArray的基本用法

     /*---------------------NSArray---------------------------*/
            //创建数组
            NSArray *array1 = [NSArray arrayWithObject:@"1"];
            NSArray *array2 = [NSArray arrayWithObjects:@"1",@"2",@"3", nil];
            NSArray *array3 = [NSArray arrayWithArray:array2];
            NSLog(@"array1 = %@",array1);
            NSLog(@"array2 = %@",array2);
            NSLog(@"array3 = %@",array3);
            
            //获取数组内数据个数
            int count = [array2 count];
            NSLog(@"array2 size is %d",count);
            
            //访问数组内的数据
            NSString *str1 = [array2 objectAtIndex:0];
            NSLog(@"array2 first content is %@",str1);
            
            //数组中插入数据   返回新的数组
            NSArray *array4 = [array3 arrayByAddingObject:@"4"];
            NSLog(@"array4 = %@",array4);
            
            //数组内的数据以制定字符连接
            NSString *str2 = [array4 componentsJoinedByString:@","];
            NSLog(@"str2 = %@",str2);
            
            //判断数组中是否包含某对象
            BOOL b1 = [array4 containsObject:@"4"];
            BOOL b2 = [array4 containsObject:@"5"];
            NSLog(@"b1 = %d,b2 = %d",b1,b2);
            
            //取数组内制定对象的索引
            int index = [array4 indexOfObject:@"4"];
            NSLog(@"index = %d",index);
            
            NSString *str3 = [array4 lastObject];
            NSLog(@"array4 last object is %@",str3);
            
            /*-----------------------可变数组NSMutableArray-----------------------------------------*/
            //初始化数组 指定数组长度   但可变
            NSMutableArray *mArray1 = [NSMutableArray arrayWithCapacity:5];
            
            //向数组中添加元素
            [mArray1 addObject:@"aaaa"];
            [mArray1 addObject:@"cccc"];
            NSLog(@"mArray1 = %@",mArray1);
            
            //向指定位置插入元素
            [mArray1 insertObject:@"bbbb" atIndex:1];
            [mArray1 insertObject:@"dddd" atIndex:[mArray1 count]];
            [mArray1 insertObject:@"eeee" atIndex:[mArray1 count]];
            NSLog(@"mArray1 = %@",mArray1);
            
            //移除元素
            [mArray1 removeObject:@"eeee"];
            NSLog(@"mArray1 = %@",mArray1);
            [mArray1 removeObjectAtIndex:[mArray1 count]-1];
            NSLog(@"mArray1 = %@",mArray1);
            NSArray *array5 = [NSArray arrayWithObjects:@"bbbb",@"cccc", nil];
            [mArray1 removeObjectsInArray:array5];
            NSLog(@"mArray1 = %@",mArray1);
            
            //向数组内插入数组
            NSMutableArray *mArray2 = [NSMutableArray arrayWithObjects:@"aaaa",@"aaaa", nil];
            [mArray2 addObject:@"bbbb"];
            NSLog(@"mArray2 = %@",mArray2);
            [mArray2 addObjectsFromArray:array4];
            NSLog(@"mArray2 = %@",mArray2);
            
            //替换元素
            [mArray2 replaceObjectAtIndex:[mArray2 count]-1 withObject:@"5"];
            NSLog(@"mArray2 = %@",mArray2);
            
            //遍历数组  常规方法:性能较低
            NSArray *array6 = [NSArray arrayWithObjects:@"a",@"b",@"c",@"d",@"e", nil];
            int len = [array6 count];
            for (int i=0; i<len; i++) {
                NSString *value = [array6 objectAtIndex:i];
                NSLog(@"array6 %d content is %@",i,value);
            }
            
            //枚举遍历  相当于java中的增强for循环
            for (NSString *string in array6) {
                NSLog(@"array6 content is %@",string);
            }
            
            NSLog(@"-----------------------");
            
            //当不确定数组元素类型时
            for(id string in array6){
                NSLog(@"array6 content is %@",string);
            }


  • 相关阅读:
    github访问慢
    vue的图片裁剪上传vue-cropper
    vue动态设置路由重定向
    vue移动端预览pdf
    Vue项目中给路由跳转加上进度条nprogress
    IDEA收藏夹迁移
    Go语言基础语法(一)
    Go语言开发环境安装
    Windows上实现iOS APP自动化测试:tidevice + WDA + facebook-wda / appium
    配置Linux主机名
  • 原文地址:https://www.cnblogs.com/riskyer/p/3281424.html
Copyright © 2011-2022 走看看