oc随笔五:NSArray
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) {
@autoreleasepool {
//NSArray的初始化以及常用数组操作方法简单归纳
//不可变数组
//数组的元素只能是对象,如果是int和float的话,就用NSNumber转换一下才能用
//初始化的几种方式,可以一个元素、多个元素、从已有组复制、从文件、网址等
NSArray *arr1 = [NSArray arrayWithObject:@"hello"];
for (id a in arr1) {
NSLog(@"%@",a);
}
//向数组对象初始化赋值,这里可以写任意对象的指针,结尾必须使用nil
NSArray *arr2 = [NSArray arrayWithObjects:@"hello",@"world", nil];
for (id b in arr2) {
NSLog(@"%@",b);
}
//定义指定类型的数组
NSString *str[3];
NSNumber *num[3];
//初始化数组元素赋值
str[0] = @"hello";
str[1] = @"world";
str[2] = @"!";
num[0] = [[NSNumber alloc] initWithInt:1];
num[1] = [[NSNumber alloc] initWithInt:2];
num[2] = [[NSNumber alloc] initWithInt:3];
NSArray *arr3 = [NSArray arrayWithObjects:str count:3];
NSArray *arr4 = [NSArray arrayWithObjects:num count:3];
//遍历数组方法一
for (id strr in arr3) {
NSLog(@"%@",strr);
}
//遍历数组方法二
for (int i = 0; i < [arr4 count]; i++) {
NSLog(@"%@",[arr4 objectAtIndex:i]);
}
//复制数组
NSArray *arr5 = [NSArray arrayWithArray:arr4];
for (NSNumber *c in arr5) {
NSLog(@"%@",c);
}
//给数组增加新元素(对象)
NSArray *newArr5 = [arr5 arrayByAddingObject:@"Augus"];
for (int i = 0 ; i < [newArr5 count]; i++) {
if (i == [newArr5 count] - 1) {
NSLog(@"%@",[newArr5 objectAtIndex:i]);
}
}
//把数组里元素利用连接符连接成字符串
NSString *strNew = [arr5 componentsJoinedByString:@"-"];
NSLog(@"%@",strNew);
//查询数组中是否包含某一元素,YES和NO
BOOL isContain = [arr3 containsObject:@"hello"];
NSLog(@"%d",isContain);
//查询并返回位置,如没有则为NSNotFound
NSInteger index = [arr3 indexOfObject:@"!"];
NSString *indexF = [NSString stringWithFormat:@"%ld",index];
NSInteger indexN = [indexF integerValue];//类型转换
NSLog(@"%ld",indexN);
//获取最后一个元素
NSString *lastEle = [arr3 lastObject];
NSLog(@"%@",lastEle);
//可变数组,5个元素
NSMutableArray *mutArr = [[NSMutableArray alloc] initWithCapacity:5];
//添加一个元素
[mutArr addObject:@"hello"];
[mutArr addObject:[NSNumber numberWithInt:66]];
[mutArr addObject:@"Augus"];
[mutArr addObject:[NSNumber numberWithDouble:19.9]];
//指定位置插入一个元素
[mutArr insertObject:@"world" atIndex:1];
//移除数组的元素,按名称、按序号等
NSLog(@"%@",mutArr);
[mutArr removeLastObject];
NSLog(@"%@",mutArr);
//替换元素
[mutArr replaceObjectAtIndex:2 withObject:@"!"];
NSLog(@"%@",mutArr);
//把一个数组添加到另一个里,实际上就是把数组里的元素都添加进去了
[mutArr addObjectsFromArray:arr4];
NSLog(@"%@",mutArr);
NSLog(@"%ld",[mutArr count]);
}
return 0;
}
oc随笔五:NSArray的更多相关文章
- OC第三节——NSArray和NSMutableArray
1.OC数组和c数组的区别 C语言的数组: 相同类型变量的有序结合. 类型:可以是简答数据类型.构造数据类型 int a[10 ...
- OC知识梳理-NSArray与NSMutableArray相关知识
知识普及: 1.数组中的元素在系统中都会有其默认对应的下标,下标是一个整形的数字,默认从0开始. 例:NSArray *arr3 = @["345","234" ...
- OC——第五天NSSArray /NSDicti…
1.oc中常用的集合(容器)有: 1.NSArry 数组:2.NSDicitionary 字典:3.NSSet 集(不常用) 数组:NSArry 继承自NSObject ,不可变的数组,用于管理一系列 ...
- iOS开发基础:OC数组对象NSArray的常用方法
本文介绍了OC的数组对象的基本方法的使用: 因为OC的数组中存储的为对象类型,所以我们可以新建一个Person类,通过Person生成对象进行操作. 其中Person.h中的代码为: [objc] v ...
- OC第五节 ——点语法和@property
一.setter和getter函数 1.回忆:如何访问对象中的成员变量 2.setter和getter函数的作用 setter 方法: 修改对象的字段/实例变 ...
- android 学习随笔五(界面)
把数据库内容显示到界面 清单文件设置为线性布局(5大布局属于ViewGroup) 在清单文件中可以增加View显示 LinearLayout ll = (LinearLayout) findViewB ...
- OC随笔一:类
总结: 在oc中,我们要整出一个类来,首先需要一个.h头文件和一个.m实现文件.一般我们创建的类都继承了根类,因为根类帮我们实现了很多实用的方法,而类里面会有变量(属性) .函数(方法) ...
- oc随笔六:字典
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...
- oc随笔四:NSString、NSNumber
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...
随机推荐
- R0:前瞻
原文链接http://www.wangafu.net/~nickm/libevent-book/Ref0_meta.html Libevent使用手册:前瞻 总览: Libevent是一个用来写高性能 ...
- nginx入门手册(一)
1.nginx进程: nginx会启动多个进程: 一个主进程Master. 几个工作进程worker. 缓存加载器进程 缓存管理器进程 master主要工作: 1. 读取并验正配置信息: 2. 创建. ...
- 解决JavaScript中如何输出空格
在写JS代码的时候,大家可以会发现这样现象:document.write(" 1 2 3 ");结果: 1 2 3无论在输出的内容中什 ...
- Java开发环境安装
一.安装JDK(java development kit) 下载地址:www.oracle.com/technetwork/java/javase/downloads 二.配置Java环境变量 1.J ...
- 关于curl_setopt参数的记录
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE) 其中true输出执行结果,false为不输出 fsockopen与curl_setopt请求的区别之一就是 ...
- em与px的区别 [ 转 ]
其实,还是不大理解,为什么1em=16px:而且,还一般要在body里面,就写清楚Fone-size=62.5%,然后再让1em=10px进行使用:那么,为什么不直接在当时定义em的时候,就直接让它等 ...
- 用PHP删除文件操作unlink
使用unlink要注意的是$filename的值,要用的是本地绝对地址.比如"c:\aaa\a.jpg",不能用相对地址比如:"../aa.jpg",那么如果在 ...
- Ubuntu 12.04 更新源
转载自:http://www.cnblogs.com/eastson/archive/2012/08/24/2654163.html 1.首先备份Ubuntu12.04源列表 sudo cp /etc ...
- 深入浅出scanf、getcha、gets、cin函数
转:问题描述一:(分析scanf()和getchar()读取字符) scanf(), getchar()等都是标准输入函数,一般人都会觉得这几个函数非常简单,没什么特殊的.但是有时候却就是因为使用这些 ...
- mark 的总结开发笔记-备
2.播放音乐:-(void) playMusic{@try{//取文件路径NSString *musicFilePath = [[NSBundle mainBundle] pathForResourc ...