不可变数组类
容器类,管理一组对象类型的数据。
 
元素是有序的,索引值从0开始 
数组中存储的元素必须是对象,类型任意。
 
创建数组对象,使⽤用实例初始化或便利构造器。
获取元素个数。
根据索引值获取对象。
获取对象在数组中的索引值。
 
 
  NSString* str=@"today";
        Person* p1 = [[Person alloc]init];
        //nil空对象,NULL表示空类
        //方法1:数组的初始化方法
        NSArray *array = [[NSArray alloc]initWithObjects:@"123",str,p1, nil];
 
        //方法2:便利构造器初始化方法
        //NSArray *arr = [NSArray arrayWithObjects:@"123",str,p1, nil];
   
        // 方法3:直接使用字面量
        NSArray *arr = @[@"123",str,p1];
 
        //求数组元素个数
        NSUInteger count = [array count];
        NSLog(@"%lu",count);
 
        for (int i=0; i<count; i++)
        {
            //方法1:通过索引找元素
            id object = [array objectAtIndex:i];
    // 方法2:
    //id object = array[count];
 
            NSLog(@"%@",object);
        }
 
        //通过元素找索引
        NSUInteger index = [array indexOfObject:p1];
        NSLog(@"%lu",index); 
 

OC中NSArray的使用的更多相关文章

  1. OC中NSArray

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...

  2. OC中的NSNumber、NSArray、NSString的常用方法

    和C语言不同,在Objective-C语言中,有单独的字符串类NSString.C语言中,string是由 char(ASCLL码)字符组成 OC中,字符串是由unichar(Unicode)字符组成 ...

  3. OC中Foundation框架之NSArray、NSMutableArray

    NSArray概述 NSArray是OC中的数组类 NSArray特点 )只能存放任意OC对象,并且是有顺序的 )不能存放非OC对象,比如int/float/double/char/enum/stru ...

  4. OC中数组类NSArray的详解,常用属性和方法(一)

    数组是一个有序的集合,OC中的数组只能存储对象类型, 但是对于对象的类型没有限制. 通过下标访问数组元素,下标从0开始. NSA

  5. Oc中的数组

    ========================== 数组 ========================== 一.认识数组 oc中可以把NSObject对象的子类放到数组这个集合中,但是int.f ...

  6. OC中的指针

    NSError *err = nil; NSError __strong **error = &err; //因为在oc中,通过* *err 创建的指针是用__strong修改的,所以要一致, ...

  7. [BS-18] 对OC中不可变类的理解

    对OC中不可变类的理解 OC中存在很多不可变的类(如NSString,NSAttributedString,NSArray,NSDictionary,NSSet等),用它们创建的对象存在于堆内存中,但 ...

  8. OC中@property属性关键字的使用(assign/weak/strong/copy)

    OC中@property属性关键字的使用(assign/weak/strong/copy) 一.assign 用于 ‘基本数据类型’.‘枚举’.‘结构体’ 等非OC对象类型 eg:int.bool等 ...

  9. OC中NSDictionary(字典)、NSMutableDictionary(可变字典)、NSSet(集合)、NSMutableSet(可变集合)得常用方法

    字典用于保存具有映射关系数据的集合 一个key—value对认为是一个条目(entry),字典是存储key—value对的容器 与数组不同,字典靠key存取元素 key不能重复,value必须是对象 ...

随机推荐

  1. 转:消除SDK更新时的“https://dl-ssl.google.com refused”错误

    消除SDK更新时,有可能会出现这样的错误: Download interrupted: hostname in certificate didn't match: <dl-ssl.google. ...

  2. spring集成mongodb jar包版本问题

    在开发过程中,spring集成mongodb的jar包. 如果需要使用排序功能. spring-data-mongodb-1.4.1.RELEASE.jar 的版本为1.4.1,如果使用如下代码: Q ...

  3. digital root问题

    问题阐述会是这样的: Given a non-negative integer num, repeatedly add all its digits until the result has only ...

  4. C++ Primer第18章Vector的再实现及bug修正

    C++Primer第18.1.2节在介绍allocator类的时候,给了一个仿照标准库中vector的例子.感觉示例代码非常好,但是本人发现了一个bug,与大家共享. 按照作者的示例程序,编译程序时总 ...

  5. css3实现的三种loading动画(转载)

    收藏了: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  6. MYSQL 关闭二进制日志

    方法 set sql_log_bin = 0; ---------------------------------------------------------------------------- ...

  7. 设置windows窗口半透明(使用SetLayeredWindowAttributes API函数)

    所需函数原型:BOOL WINAPI SetLayeredWindowAttributes(HWND hWnd,  COLORREFcrKey,  BYTE bAlpha,  DWORD flag); ...

  8. DIV+CSS规范命名

    一.命名规则说明: 1).所有的命名最好都小写2).属性的值一定要用双引号("")括起来,且一定要有值如class="divcss5",id="div ...

  9. 支付宝“订单交易失败 ALI64” 报错的原因

    移动快捷支付,往往需要集成支付宝的sdk,集成的过程相对简单,只要按照支付宝的文档,进行操作一般不会出问题. 下面主要说明一下,集成sdk后报 "订单交易失败 请稍后再试(ALI64)&qu ...

  10. oracle 物化视图导入导出报错

    1.exp导出报EXP-00008: 遇到 ORACLE 错误 1455,ORA-01455: 转换列溢出整数数据类型 2.imp导入报.注: 表包括 ROWID 列, 其值可能已废弃,不是警告也不是 ...