NSArray和NSMutableArray的详解
数组中不能存放基本数据类型,必须存放对象,因此如果要存放基本数据类型,先进行NSTimer封装
NSArray的用法:
第一、初始化
NSArray *firstArray=[[NSArray alloc] initWithObjects:@"one",@"two",@"three", nil];
NSArray *secondArray=[NSArray arrayWithArray:firstArray];
第二、获取元素个数和访问
NSLog(@"the number is %ld",[secondArray count]);
NSLog(@"the value is %@",[secondArray objectAtIndex:2]);
第三、追加数据元素
NSArray *thirdArray=[firstArray arrayByAddingObjectsFromArray:secondArray];
第四、数组转化为字符串
NSString *str=[firstArray componentsJoinedByString:@".."];
NSLog(@"the number is %@",str);
第五、判断是否包含字符串
NSArray *firstArray=[[NSArray alloc] initWithObjects:@"one",@"two",@"three", nil];
NSLog(@"has value %d",[firstArray containsObject:@"two"]);
NSLog(@"has value %ld",[firstArray indexOfObject:@"two"]);
NSLog(@"the last object is %@",[firstArray lastObject]);
NSMutalbeArray 的用法-
第一、基本的增删改
NSMutableArray *mutableArr=[NSMutableArray arrayWithCapacity:4];
[mutableArr addObject:@"hello"];
[mutableArr addObject:@"hello"];
[mutableArr addObject:@"hello"]; [mutableArr addObject:@"richard"];
[mutableArr insertObject:@"yang" atIndex:1];
NSLog(@"%@",mutableArr);
[mutableArr removeObject:@"hello"];
[mutableArr removeObjectAtIndex:0];
[mutableArr removeLastObject];
NSLog(@"%@",mutableArr);
第二、替换操作
[mutableArr replaceObjectAtIndex:0 withObject:@"kaixin"];
第三、遍历
NSMutableArray *mutableArr=[NSMutableArray arrayWithCapacity:4];
[mutableArr addObject:@"hello"];
[mutableArr addObject:@"hello"];
[mutableArr addObject:@"hello"];
for(int index=0;index<[mutableArr count];index++)
{
NSLog(@"the val is %@",[mutableArr objectAtIndex:index]);
}
for(NSString *str in mutableArr)
{
NSLog(@"%@",str);
}
for (id str in mutableArr) {
NSLog(@"%@",str);
}
NSArray和NSMutableArray的详解的更多相关文章
- IOS - Objective-C NSArray和NSMutableArray的详解 使用
原文地址:http://blog.csdn.net/totogo2010/article/details/7729377 Objective-C的数组比C++,Java的数组强大在于,NSArray保 ...
- 李洪强iOS经典面试题156 - Runtime详解(面试必备)
李洪强iOS经典面试题156 - Runtime详解(面试必备) 一.runtime简介 RunTime简称运行时.OC就是运行时机制,也就是在运行时候的一些机制,其中最主要的是消息机制. 对于C ...
- iOS开发技巧系列---详解KVC(我告诉你KVC的一切)
KVC(Key-value coding)键值编码,单看这个名字可能不太好理解.其实翻译一下就很简单了,就是指iOS的开发中,可以允许开发者通过Key名直接访问对象的属性,或者给对象的属性赋值.而不需 ...
- UITabBarController详解
UITabBarController使用详解 UITabBarController是IOS中很常用的一个viewController,例如系统的闹钟程序,ipod程序等.UITabBarControl ...
- iOS开发——屏幕适配篇&Masonry详解
Masonry详解 前言 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-ip ...
- [深入浅出Cocoa]详解键值观察(KVO)及其实现机理
一,前言 Objective-C 中的键(key)-值(value)观察(KVO)并不是什么新鲜事物,它来源于设计模式中的观察者模式,其基本思想就是: 一个目标对象管理所有依赖于它的观察者对象,并在它 ...
- 深拷贝与浅拷贝(mutableCopy与Copy)详解 iOS
深拷贝与浅拷贝(mutableCopy与Copy)详解 iOS ios中并不是所有的对象都支持copy,mutableCopy,遵守NSCopying 协议的类可以发送copy消息,遵守NSMutab ...
- IOS详解TableView——选项抽屉(天猫商品列表)
在之前的有篇文章讲述了利用HeaderView来写类似QQ好友列表的表视图. 这里写的天猫抽屉其实也可以用该方法实现,具体到细节每个人也有所不同.这里采用的是点击cell对cell进行运动处理以展开“ ...
- iOS应用开发详解
<iOS应用开发详解> 基本信息 作者: 郭宏志 出版社:电子工业出版社 ISBN:9787121207075 上架时间:2013-6-28 出版日期:2013 年7月 开本:16开 ...
随机推荐
- WPF之Behavior
本文主要是以实现拖动元素作为例子. 创建Behavior: 通常这个类会继承自Behavior<T>,其中T就是此Behavior服务的对象,在此处使用的是UIElement,也就是虽有的 ...
- linux目录/术语/英文
1./bin :获得最小的系统可操作性所需要的命令2./boot :内核和加载内核所需的文件3./dev :终端.磁盘.调制解调器等的设备项4./etc :关键的启动文件和配置文件5./home :用 ...
- R语言学习笔记:取数据子集
上文介绍了,如何生成序列,本文介绍一下如何取出其数据子集 取出元素的逻辑值 > x<-c(0,-3,4,-1,45,90,5) > x>0 [1] FALSE FALSE T ...
- Counting sheep...
Counting sheep... Description: Consider an array of sheep where some sheep may be missing from their ...
- ubuntu终端颜色配置
对于刚接触ubuntu的同学们,打开终端(ctrl+alt+T),会发现里面都是一个颜色,不管是用户名.主机名还是命令都是白色,当然,用 ls 列出文件的时候是会多一种颜色的.即使这样,对开发人员来说 ...
- poj 1789 Truck History(最小生成树)
模板题 题目:http://poj.org/problem?id=1789 题意:有n个型号,每个型号有7个字母代表其型号,每个型号之间的差异是他们字符串中对应字母不同的个数d[ta,tb]代表a,b ...
- java.lang.NoClassDefFoundError: com/opensymphony/xwork2/util/TextUtils
java.lang.NoSuchMethodError: com.opensymphony.xwork2.ActionContext.get(Ljava/lang/String;)Ljava/lang ...
- bzoj1937
这道题没弄明白 初始模型很好想,是用到了最小生成树的性质 加入非树边后树上形成的环,非树边一定大于等于任意树边 然后考虑树边一定是缩小,非树边一定是增大 有di+wi>=dj-wj wi+wj& ...
- javascript两行代码按指定格式输出日期时间
javascript两行代码按指定格式输出日期时间,具体看代码: function date2str(x,y) { var z ={y:x.getFullYear(),M:x.getMonth()+1 ...
- eayui 验证扩展
$.extend($.fn.validatebox.defaults.rules, { idcard : {// 验证身份证 validator : function(value) { return ...