黑马程序员——Foundation框架—NSArray
来源:互联网 发布:ubuntu全中文包 编辑:程序博客网 时间:2024/05/20 06:39
——- android培训、java培训、期待与您交流! ———-
1、NSArray的基本介绍
1)什么是NSArray?
NSArray是OC中的数组类, 开发中建议尽量使用NSArray替代C语言中的数组- C语言中数组的弊端
int array[4] = {10, 89, 27, 76};
只能存放一种类型的数据.(类型必须一致)
不能很方便地动态添加数组元素、不能很方便地动态删除数组元素(长度固定)
- C语言中数组的弊端
2)NSArray的使用注意
1、只能存放任意OC对象, 并且是有顺序的
2、不能存储非OC对象, 比如int\float\double\char\enum\struct等
3、它是不可变的, 一旦初始化完毕后, 它里面的内容就永远是固定的, 不能删除里面的元素, 也不能再往里面添加元素
2、NSArray创建
NSArray的创建方式
+ (instancetype)array; + (instancetype)arrayWithObject:(id)anObject; + (instancetype)arrayWithObjects:(id)firstObj, ...; + (instancetype)arrayWithArray:(NSArray *)array; + (id)arrayWithContentsOfFile:(NSString *)path; //读取一个xml文件. + (id)arrayWithContentsOfURL:(NSURL *)url; // 读取一个xml文件
2、NSArray的方法使用
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //类方法数组创建 NSArray *array1 = [NSArray arrayWithObject:@"obj"]; NSArray *array2 = [NSArray arrayWithObjects:@"obj1", @"obj2", @"obj3", nil]; NSArray *array3 = [NSArray arrayWithArray:array2]; NSLog(@"array1 :%@", array1); NSLog(@"array2 :%@", array2); NSLog(@"array3 :%@", array3); //实例方法创建数组 NSArray *array4 = [[NSArray alloc] initWithObjects:@"AAA", @"bbb", nil]; NSLog(@"array4 :%@", array4); //数组个数 NSLog(@"array3 count :%d", [array3 count]); //访问元素 NSLog(@"obj at index :%@", [array2 objectAtIndex:2]); //追加(返回新的array对象) NSArray *array5 = [array3 arrayByAddingObject:@"ccc"]; NSLog(@"array5 :%@", array5); //根据指定的字符串连接数组元素 NSString *joinString1 = [array5 componentsJoinedByString:@"|"]; NSLog(@"joinString :%@",joinString1); //是否包含指定对象 NSLog(@"isContains :%d", [array5 containsObject:@"obj2"]); //查找某个对象所在索引 NSLog(@"indexOfObject :%d",[array5 indexOfObject:@"obj3"]); //最后一个元素 NSLog(@"lastObejct :%@", [array5 lastObject]); //遍历数组 for (id element in array5) { NSLog(@"element :%@", element); } //可变数组(期望容量设置为3) NSMutableArray *mutableArray = [NSMutableArray arrayWithCapacity:3]; //直接添加 [mutableArray addObject:@"aaa"]; [mutableArray addObject:@"eee"]; [mutableArray addObject:@"000"]; NSLog(@"addObject :%@", mutableArray); //插入元素 [mutableArray insertObject:@"ccc" atIndex:0]; NSLog(@"insertObject :%@", mutableArray); //移除指定元素 [mutableArray removeObject:@"ccc"]; NSLog(@"removeObject :%@", mutableArray); //移除指定下标元素 [mutableArray removeObjectAtIndex:0]; NSLog(@"removeObjectAtIndex :%@", mutableArray); //移除最后一个元素 [mutableArray removeLastObject]; NSLog(@"removeLastObject :%@", mutableArray); //添加数组 [mutableArray addObjectsFromArray:array5]; NSLog(@"addObjectsFromArray :%@", mutableArray); //移除指定数组中的内容 [mutableArray removeObjectsInArray:array2]; NSLog(@"removeObjectsInArray :%@", mutableArray); //指定索引替换对象 [mutableArray replaceObjectAtIndex:0 withObject:@"==="]; NSLog(@"replaceObjectAtIndex :%@", mutableArray); //删除全部对象 [mutableArray removeAllObjects]; NSLog(@"removeAllObjects :%@", mutableArray); } return 0; }
0 0
- 黑马程序员——Foundation框架—NSArray
- 黑马程序员—Foundation框架之NSArray与NSMutableArray
- 【黑马程序员】OC-Foundation框架—NSArray和NSMutableArray
- 黑马程序员-Foundation框架-NSArray
- 【黑马程序员】Foundation框架NSArray
- 黑马程序员——Foundation框架——集合类(NSSet、NSArray等)(一)
- 黑马程序员——Foundation框架——集合类(NSSet、NSArray等)(二)
- 黑马程序员——Foundation框架——NSArray和NSMutableArray
- 黑马程序员——Foundation框架——NSArray和NSMutableArray的介绍及使用
- 黑马程序员——Foundation框架——NSArray常用方法
- 黑马程序员——Foundation框架入门:NSString,NSArray,NSDictionary和NSURL
- 黑马程序员—— Foundation框架NSArray、NSSet、NSDictionary、NSNumber、NSDate、NSValue
- 黑马程序员——Foundation框架NSArray和NSMUtableArray的介绍及使用
- Foundation框架 —— NSArray
- 黑马程序员——Foundation学习—-----NSArray和NSMutableArray
- 黑马程序员——Foundation学习之NSArray\NSMutableArray
- 黑马程序员——OC基础---Foundation<NSString,NSArray,NSMultableString>
- 黑马程序员-Foundation框架之NSArray类
- 大数阶乘
- 修改rabbitmq Web UI 监控页面的端口
- LoadRunner获取登录验证码
- symfony 使用excel方法
- swift 快速奔跑的兔几 本节的内容是:animations
- 黑马程序员——Foundation框架—NSArray
- 【SHELL】使用ps如何准确地打印出某个用户的进程
- php错误屏蔽
- symfony 加载插件方法
- ArcGIS开发权威指南 上架
- 5个数求最值
- 关于java.sql.SQLException: Incorrect string value的解决方法
- InstallScript的事件
- 【大渣】【DP+单调队列优化】布丁