今天在做 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:)] ;

IOS 中 NSArray的更多相关文章

  1. 从deque到std::stack,std::queue,再到iOS 中NSArray(CFArray)

    从deque到std::stack,std::queue,再到iOS 中NSArray(CFArray) deque deque双端队列,分段连续空间数据结构,由中控的map(与其说map,不如说是数 ...

  2. iOS中--NSArray调用方法详解 (李洪强)

    下面的例子以     NSArray *array = [NSArray arrayWithObjects:@"wendy",@"andy",@"to ...

  3. ios 中NSArray

    // #import <Foundation/Foundation.h> #import "Animal.h" int main(int argc, const cha ...

  4. iOS中数据库应用基础

    iOS 数据库入门 一.数据库简介 1.什么是数据库? 数据库(Database) 是按照数据结构来组织,存储和管理数据的仓库 数据库可以分为2大种类 关系型数据库(主流) PC端 Oracle My ...

  5. iOS 中的 HotFix 方案总结详解

    相信HotFix大家应该都很熟悉了,今天主要对于最近调研的一些方案做一些总结.iOS中的HotFix方案大致可以分为四种: WaxPatch(Alibaba) Dynamic Framework(Ap ...

  6. iOS中获取各种文件的目录路径的方法

    我们的app在手机中存放的路径是:/var/mobile/Applications/4434-4453A-B453-4ADF535345ADAF344 后面的目录4434-4453A-B453-4AD ...

  7. iOS中的数据持久化方式

    iOS中的数据持久化方式,基本上有以下四种:属性列表.对象归档.SQLite3和Core Data. 1.属性列表 涉及到的主要类:NSUserDefaults,一般 [NSUserDefaults ...

  8. iOS:iOS中的多控制器管理

    iOS中的控制器有三种创建方式: 1.通过storyboard创建 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@" ...

  9. iOS中几种常用的数据存储方式

    自己稍微总结了一下下,方便大家查看 1.write直接写入文件的方法 永久保存在磁盘中,可以存储的对象有NSString.NSArray.NSDictionary.NSData.NSNumber,数据 ...

随机推荐

  1. xcode 脚本编译,打包ipa

    1.清理工程 /usr/bin/xcodebuild -target targetName clean 2.编译 /usr/bin/xcodebuild -target targetName buil ...

  2. 高可用性中的脑裂问题(split-brain problem in HA)(转)

    欢迎关注我的社交账号: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://gith ...

  3. IE6/IE7下:inline-block解决方案

    IE6/IE7下对display:inline-block的支持性不好. 1.inline元素的display属性设置为inline-block时,所有的浏览器都支持: 2.block元素的displ ...

  4. HDU----(4519)郑厂长系列故事——体检

    郑厂长系列故事——体检 Time Limit: 500/200 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total S ...

  5. hdu----(2586)How far away ?(DFS/LCA/RMQ)

    How far away ? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  6. XPath 语法示例

    参考:http://www.w3school.com.cn/xpath/xpath_syntax.asp XPath 使用路径表达式来选取 XML 文档中的节点或节点集.节点是通过沿着路径 (path ...

  7. 新建txt文件新增内容并打印出

    #!/usr/bin/python import os file1=open("C:\Python34\ceshi.txt","a+");  #a+开一个文件用 ...

  8. SQL Server数据库(作业讲解和复习)

    --第一题 查询Student表中的所有记录的Sname.Ssex和Class列.select Sname,Ssex,Class from student --第二题 查询教师所有的单位即不重复的De ...

  9. css hack整理:区别FF,IE8,IE7,IE6,SF,CH浏览器

    css hack整理:区别FF,IE8,IE7,IE6,SF,CH浏览器 2013年03月24日 ⁄ CSS ⁄ 共 716字 ⁄ 暂无评论         前端开发最要命的事就是处理浏览器的兼容性问 ...

  10. 使用JQuery的Ajax调用SOAP-XML Web Services(Call SOAP-XML Web Services With jQuery Ajax)(译+摘录)

    假设有一个基于.Net的Web Service,其名称为SaveProduct POST /ProductService.asmx HTTP/1.1 Host: localhost Content-T ...