C语言中数组只能存放一种类型

OC语言中数组可以存放多种类型,但是只能是对象类型,不可以是基本类型

我们实际中最好在一个数组中只存放一种类型的元素

nil表示数组的结尾,所以我们不能填写值为nil的对象

提前定义三个对象

Person *p1 =[[Person alloc]init];

Person *p2 =[[Person alloc]init];

Person *p3 =[[Person alloc]init];

NSArray

创建一个不可变数组

NSArray *array =@[p1,p2,p3];

数组的元素个数

NSLog(@"%ld",array.count);

根据索引查找对象

Person *p4 =[array objectAtIndex:0];

查找第一个或者最后一个对象

Person *p5 =[array lastObject];

Person *p6 =[array firstObject];

快速循环

for (Person *p in array){

}

获取一个对象的索引值

NSInteger index = [array indexOfObject:p1];

判断是否包含某个数组

if ([array containsObject:p1]) {

}

NSMutableArray

创建一个可变的数组

NSMutableArray *mArray =[NSMutableArray arrayWithCapacity:0];

添加元素

[mArray addObject:p1];

[mArray addObject:p2];

[mArray addObject:p3];

插入元素

[mArray insertObject:p1 atIndex:0];

交换两个元素

[mArray exchangeObjectAtIndex:0 withObjectAtIndex:1];

删除元素

[mArray removeObject:p1];

[mArray removeObjectAtIndex:0];

清空元素

[mArray removeAllObjects];

Foundation--NSArray+NSMutableArray的更多相关文章

  1. 关于NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary

    NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary 在 OC 中我们天天都要用,而我们要怎 ...

  2. Foundation框架—— 数组 (NSArray NSMutableArray )

    基础知识回顾 1.在给可变数组添加元素时,要保证该数组已被初始化 2.在遍历可变数组时,不能对其进行增删改 3.NSMutableArray继承自NSArray,几乎拥有NSArray的一切方法. 4 ...

  3. Foundation ----->NSArray

    .数组的创建     //注意:在OC的数组中,只能够存放对象 //    NSArray *array = [NSArray arrayWithObject:12];错误          //创建 ...

  4. NSArray,NSMutableArray的三种排序

    int main(int argc, const char * argv[]) { @autoreleasepool { //字符串进行排序 NSArray *arr=@[@"b" ...

  5. (转)Iphone数组一些基础操作 NSArray/NSMutableArray

    /******************************************************************************************* NSArray ...

  6. NSArray NSMutableArray

    NSArray 或者 NSMUtableArray 去除重复的数据: 原来集合操作可以通过valueForKeyPath来实现的,去重可以一行代码实现: [array valueForKeyPath: ...

  7. NSArray NSMutableArray 初始化

    NSArray* Array;//此时数组没有初始化,数组=nil [Array objectAtIndex:2];//不会调用其属性方法,这里不会崩溃 NSMutableArray *Mutable ...

  8. (转载)OC学习篇之---Foundation框架中的NSArray类和NSMutableArray类

    在之前的一篇文章中介绍了Foundation框架中的NSString类和NSMutableString类,今天我们继续来看一下Foundation框架中的NSArray类和NSMutableArray ...

  9. OC学习篇之---Foundation框架中的NSArray类和NSMutableArray类

    我们继续来看一下Foundation框架中的NSArray类和NSMutableArray类,其实NSArray类和Java中的List差不多,算是一种数据结构,当然我们从这两个类可以看到,NSArr ...

  10. 【IOS 开发】Objective-C Foundation 框架 -- 字符串 | 日期 | 对象复制 | NSArray | NSSet | NSDictionary | 谓词

    一. 字符串 API 1. NSString 用法简介 (1) NSString API 介绍 NSString 功能 : -- 创建字符串 : 使用 init 开头的实例方法, 也可以使用 Stri ...

随机推荐

  1. const用法总结

    1. const修饰变量 ; const int* a = &b; //情况1 int const* a = &b; //情况2 int* const a = &b; //情况 ...

  2. PHP学习笔记二十七【重写】

    <?php // class Animal{ public $name; protected $price; function cry(){ echo "动物在叫....<br/ ...

  3. 10 个十分难得的 javascript 开发经验

    Javascript 的很多扩展的特性是的它变得更加的犀利, 同时也给予程序员机会创建更漂亮并且更让用户喜欢的网站. 尽管很多的开发人员都乐于颂扬 javascript,但是仍旧有人看到它的阴暗面. ...

  4. PHP怎么实现网站中,同一个用户不能同时在线?

    先上图,看个大概: 一般的原则就是,后一个用户登录时会把前一个用户踢下线. 在用户首次登录时,我们会把用户的sessionid保存到数据库,这个是用户的唯一标识.方便后边操作. 用户只有在登录时才会和 ...

  5. [C++程序设计]对“&”和“*”运算符

    对“&”和“*”运算符再做些说明:(1) 如果已执行了“pointer_1=&a;”语句,请问&*pointer_1的含义是什么?“&”和“*”两个运算符的优先级别相同 ...

  6. 高可用集群(HA)之Keeplived原理+配置过程

    原理--> 通过vrrp协议,定义虚拟路由,在多个服务节点上进行转移. 通过节点优先级,将初始虚拟路由到优先级高的节点上,checker工作进程检测到主节点出问题时,则降低此节点优先级,从而实现 ...

  7. IOS开发UI篇-NavigationController的基本使用

    一.简介 一个iOS的app很少只由一个控制器组成,除非这个app极其简单 当app中有多个控制器的时候,我们就需要对这些控制器进行管理 有多个view时,可以用一个大的view去管理1个或者多个小v ...

  8. Java 遍历Map

    Set<Map.Entry<String, String>> aSet = map.entrySet(); Iterator<Map.Entry<String, S ...

  9. final+基本类型导致只编译常量类引起的错误

    http://jackyrong.iteye.com/blog/1813878 字节码问题.

  10. VS2010常用的调试方法

    1.一直以来都没用过command window, F5以后可以这样用,直接对一个函数,或者变量做模块测试 以下还有一些常用的技巧: 1 悬停鼠标查看表达式值 调试是很有挑战性的.比如在函数内逐步运行 ...