OC -- 数组

作者: 爱摄影的铲屎官 | 来源:发表于2016-04-01 19:55 被阅读653次

#pragma 将基本数据类型封装对象

int a = 25;

NSNumber *objectA  = [NSNumber numberWithInt:a];

int aa = [objectA intValue];

float b = 3.6f;

NSNumber *objectB = [NSNumber numberWithFloat:b];

float bb = [objectB floatValue];


 数组

           OC中数组的格式:NSSArray *array = @[@"元素1",@"元素2",@"元素3"];

           OC中能将另一个数组的值赋给新数组

           1.  数组对象的创建 

                (1).  创建数组时给数组添加一个元素:arrayWithOb

                (2). 创建数组时给数组添加多个元素:arrayWithObjects 

                       采用该方式最后用 nil结尾

                 (3). 创建数组时添加整个数组:arrayWithArray

                     NSArray *array = @[@"蝙蝠侠",@"钢铁侠",@"煎饼侠"];

                      NSArray *array1 = [[NSArray alloc]init];

                       array1 = @[@"葫芦娃",@"女娲",@"孙悟空"];

                       //oc中能够将另一个数组的值赋给新数组

                       NSArray *array2 = [NSArray array];

                      //OC中,能够将另一个数组的值赋给新数组

                        array2 = array1;

                        //ArrayWithObject,创建数组时只能给数组赋一个值

                        NSArray *array3 = [NSArray arrayWithObject:@"sss"];

                         //ArrayWithObjects,创建数组是能够给数组赋多个元素

                         NSArray *array4 = [NSArray arrayWithObjects:@"sb",@"nc", nil];

                      NSArray *array5 = [NSArray arrayWithArray:array];

            2.  获取数组中的元素个数以及访问数组元素

                   (1). 通过下标来存取值:array[];

                          NSArray *array8 = [NSArray arrayWithObjects:@"大天儿",@"中天儿",@"小天儿", nil];

                          NSString *test = array8[2];//OC数组通过下标来取值

                   (2). 通过count获取到数组中元素的个数:array count 

                          int Numelement = [array8 count];

            3.  追加数组中的内容

                   (1). 往数组里面追加一个元素:arrayByAddingObject  

                        NSArray *arrayAdd = [array8 arrayByAddingObject:@(8)];

                         NSArray *array9 = @[@"大娃",@"小娃",@"江娃"];

                   (2). 往数组里面追加一个数组:arrayByAddingObjectsFromArray

                    NSArray *arrayAddArray =[array8 arrayByAddingObjectsFromArray:array9];

            4.  数组转字符串

                  (1).数组转换字符串的方法:componentsJoinedByString

                       用符号隔开元素

                       NSArray *array10 = @[@"大咕噜",@"中咕噜",@"小咕噜"];

                         NSString *arrayString = [array10 componentsJoinedByString:@" "];

            5.  判断数组中是否存在一个指定的对象

                   (1). 判断数组中是否存在一个指定的对象:containsObject

                         结果用 BOOL 接受

                         BOOL isMieShaoNv = [array10 containsObject:@"美少女"];

              6. 根据指定的对象返回索引下标、返回数组中最后一个元素

                   (1).  根据索引下标,找到第一个最后一个元素:first/lastObject   NSMutableArray

                          //indexOfObject找到指定对象的下标

                           long index = [array10 indexOfObject:@"白素贞"];

                            //lastObject获取到数组的最后一个元素

                            NSString *lastString = [array10 lastObject];

               7.  新增

                    (1). 往数组里面添加一个元素:addObject

                          NSMutableArray *array11 = [NSMutableArray arrayWithObjects:@"哪吒",@"喜洋洋",@"光头强", nil];

                    (2).往数组里面批量添加元素:addObjectFromArray

                         [array11 addObject:@"鸟山明"];

                          NSArray *array12 = @[@"1",@"2",@"3",];

                         //addObjectsFromArray 往数组批量添加元素

                          [array11 addObjectsFromArray:array12]

                8.  插入

                     (1). 往数组里插入一个元素:insertObject...atIndex

                           atIndex指的是从哪插入

                           [array11 insertObject:@"小龙女" atIndex:0];

                            NSArray *array = @[@"美美",@"哒",@"哈",];

                 9. 删除

                     // 移除最后一个元素

                        [array11 removeLastObject];

                      //移除指定位置的元素

                       [array11 removeObjectAtIndex:0];

                       //移除数组中指定的元素 

                        [array11 removeObject:@"路飞"]; 

                        //移除所有的元素

                        [array11 removeAllObjects];

                         //批量移除

                         NSArray *Array  = @[@"11",@"22",@"33"];

                         [array11 removeObjectsInArray:Array ];

                10. 替换元素

                       (1).  用指定元素替换数组中指定位置:replaceObjectAtIndex:withObject

                               后加指定元素位置,      后加指定元素

                               [array11 replaceObjectAtIndex:0 withObject:@"微笑"];

                                 NSRange rang2 = {1,4};

                      (2).   用指定数组替换数组中指定区域元素

                              replaceObjectInRange:位置

                               withObjectsFromArray:nil

                               [array11 replaceObjectsInRange:rang2 withObjectsFromArray:nil];

相关文章

  • swift版indexOfObject()

    先转成OC的数组,OC数组提供indexOfObject(object),let tempItems =self....

  • Objective-C 学习笔记 - 数组与可变数组

    【前言】 OC中使用两种数组,第一种是OC数组,第二种是C语言的数组,使用OC数组存放对象类型,使用C语言数组存放...

  • Foundation框架---数组

    OC 数组特点: 可以存储不同类型的对象,oc的数组 只能存储对象 数组可以遍历,占用的内存空间是连续的. oc中...

  • iOS 中NSArray

    //OC 的数组 可以存储不同类型的对象 ,OC 的数组只能存储对象 //不可变数组 NSArray *array...

  • oc 基础--NSArray

    // oc 的数组可以存储不同类型的对象// oc 的数组只能存储对象 NSNumber NSValue

  • 可变数组和不可变数组

    OC 的数组 可以存储不同类型的对象 ,OC 的数组只能存储对象 NSArray 1.快速创建数组 2.根据已有...

  • Objective-C day5 集合(17-07-31)

    OC中的集合包括:数组类 字典类 集合类##数组:1.数组是一个有序的集合,OC中的数组只能存储对象类型,但是...

  • swift基础-4-数组

    数组定义:OC:有值数组 空数组 不可变数组:NSArray可变数组:NSMutableArray swift:有...

  • 《Objective-C高级编程 iOS与OS X多线程与内存管

    内存管理篇: 6.不要使用静态和动态数组(非OC集合对象) 静态数组(类似于c数组,非OC的集合对象): 使用__...

  • iOS开发中JS给OC传参/传值/

    本篇只讲JS给OC传值 前端 JS这么写 OC这样接收 如果是数组 JS这么写 OC这么写 如果是字典、带下标数组...

网友评论

本文标题:OC -- 数组

本文链接:https://www.haomeiwen.com/subject/qbsylttx.html