zoukankan      html  css  js  c++  java
  • IOS 中 NSArray

      今天在做 cordova  关于处理未读条数的插件时,需要在js中传入 int 型。  但是发现所有插件 里面的参数信息都是封装在NSArry对象里面。  因此又突然想直接在NSArry获取信息的想法。  但是发现直接获取不可取的。因此查询了相关资料又重新温习了一遍其知识。 (当然既然直接无法获取整形,那么我就变向通过  NSString 和 int 之间的互转来进行处理---[str intValue])

    NSArray
    用于对象有序集合(相当于是数组)
    ===========================================================================
    NSArray是不可变的,而且只能储存Object-c对象。另外,数组的最后一个元素一定是nil,表示结束。

    注:这些集合类只能收集cocoa对象(NSOjbect对象),如果想保存一些原始的C数据(例如,int, float, double, BOOL等),则需要将这些原始的C数据封装成NSNumber类型的,NSNumber对象是cocoa对象,可以被保存在集合类中。


    数组常见的用法首先是创建数组,然后对数组进行操作。

    对数组进行的操作可以分为:增(插入),删,改,查 , 取,遍历,排序,比较,

    对于NSArray来说,因为本身是不可变的,所以对NSArray的操作没有增和删。

    NSArray  *array = [ NSArray alloc] init ];

    1.取

    - (id)objectAtIndex : (NSInteger *)aValue   得到所给下标的数组中的值

    - (NSInteger *)indexOfObject: (id)object  得到所给对象在数组中的下标

    - lastObject;  得到数组中最后一个值

    例如:

        Student *stu1=[Student studentWithName:@"张三" andHobby:@"hk" andAge:21];
        Student *stu2=[Student studentWithName:@"李四" andHobby:@"hjik" andAge:25];
        Student *stu3=[Student studentWithName:@"王五" andHobby:@"fds" andAge:23];
        NSArray *stuArray=[[NSArray alloc]initWithObjects:stu1,stu2,stu3, nil];//创建数组对象并 初始化内容
        int c=[stuArray count];//返回是数组元素个数
        for (int i=0; i
        {
            Student *st=[stuArray objectAtIndex:i];//获取数组相关下表对应的元素
            [st sayHi];
        }
        NSLog(@"%d",[stuArray indexOfObject:stu3]);//indexOfObject是得到所给对象在数组中的下标
     结果是:

      我叫张三,今年21,我的爱好是hk

      我叫李四,今年25,我的爱好是hjik

      我叫王五,今年23,我的爱好是fds

    2.查

    - containsObject :(id)object  查询是否包含所给对象

    3.遍历数组

    三种方法:1.in  2.遍历器  3.for

    另外,NSArray还有一个非常强大的方法  -makeObjectsPerformSelector () ;这个函数可以将一个操作作用在数组中的每个元素上。例如:

    [array  makeObjectsPerformSelector:@selector(get:)] ;

  • 相关阅读:
    UVA 10600 ACM Contest and Blackout(次小生成树)
    UVA 10369
    UVA Live 6437 Power Plant 最小生成树
    UVA 1151 Buy or Build MST(最小生成树)
    UVA 1395 Slim Span 最小生成树
    POJ 1679 The Unique MST 次小生成树
    POJ 1789 Truck History 最小生成树
    POJ 1258 Agri-Net 最小生成树
    ubuntu 用法
    ubuntu 搭建ftp服务器,可以通过浏览器访问,filezilla上传文件等功能
  • 原文地址:https://www.cnblogs.com/kingbo/p/3678387.html
Copyright © 2011-2022 走看看