Objective-C 二维数组详解
来源:互联网 发布:专业淘宝刷销量 编辑:程序博客网 时间:2024/04/28 06:32
在实际的项目开发中,二维数组也是常常用到的数据结构。OC中的二维数组也是通过一维数组来建立的,今天我们来详解一下如何在OC中使用二维数组。
【使用NSArray初始化二维数组】
使用NSArray初始化的一维数组和二维数组都是不可变数组。
#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) { @autoreleasepool { //定义2个一维数组; NSArray *firstRow = [[NSArray alloc] initWithObjects:@"1",@"2",@"3", nil]; NSArray *secondRow = [[NSArray alloc] initWithObjects:@"4",@"5",@"6", nil]; //使用一维数组来初始化二维数组; NSArray *my2DArray = [[NSArray alloc] initWithObjects:firstRow,secondRow, nil]; //输出二维数组对象; NSLog(@"二维数组:%@",my2DArray); //遍历二维数组; for (int i = 0; i < [my2DArray count]; i++) { for (int j = 0; j < firstRow.count; j++) { NSLog(@"二维数组元素:%@",[[my2DArray objectAtIndex:i] objectAtIndex :j]); } } } return 0;}
打印结果如下:
。
【使用NSMutableArray初始化二维数组】
使用NSMutableArray初始化的一维数组和二维数组都是可变的,可以进行修改和插入操作;
#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) { @autoreleasepool { NSMutableArray *firstRow = [[NSMutableArray alloc] initWithObjects:@"11",@"22",@"33", nil]; NSMutableArray *secondRow = [[NSMutableArray alloc] initWithObjects:@"44",@"55",@"66", nil]; NSMutableArray *my2DArray = [[NSMutableArray alloc] initWithObjects:firstRow,secondRow, nil]; //插入一个数据 [[my2DArray objectAtIndex:0] insertObject:@"iOS" atIndex:3]; NSLog(@"%@",my2DArray); [[my2DArray objectAtIndex:1] insertObject:@"OC" atIndex:0]; NSLog(@"%@",my2DArray); } return 0;}打印结果如下:
。
【使用for-in快速遍历二维数组】
#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) { @autoreleasepool { //定义2个一维数组; NSArray *firstRow = [[NSArray alloc] initWithObjects:@"1",@"2",@"3", nil]; NSArray *secondRow = [[NSArray alloc] initWithObjects:@"4",@"5",@"6", nil]; //使用一维数组来初始化二维数组; NSArray *my2DArray = [[NSArray alloc] initWithObjects:firstRow,secondRow, nil]; //遍历二维数组; for (int i = 0; i < [my2DArray count]; i++) { for (int j = 0; j < firstRow.count; j++) { NSLog(@"二维数组元素:%@",[[my2DArray objectAtIndex:i] objectAtIndex :j]); } } //打印某个维度的一维数组 NSLog(@"一维数组:%@",[my2DArray objectAtIndex:0]); //使用for-in快速遍历二维数组中的一维数组 for (NSArray *arr in my2DArray) { NSLog(@"二维数组中的一维数组:%@",arr); } //使用for-in快速遍历二维数组中的每一个元素 for (NSArray *arr in my2DArray) { for (NSString *str in arr) { NSLog(@"for-in结果:%@",str); } } } return 0;}
打印结果:
。
github主页:https://github.com/chenyufeng1991 。欢迎大家访问!
1 1
- Objective-C 二维数组详解
- Objective - c 创建二维数组
- Objective-C数组详解
- objective-c二维数组 objective-c多维数组 iPhone 开发
- C 语言中二维数组指针详解
- c语言二维数组和指针详解
- Xcode基础:Objective-C中的数组详解
- Xcode基础:Objective-C中的数组详解
- 二维数组详解
- 二维数组指针详解
- 二维树状数组详解
- java二维数组详解
- 二维数组详解
- C++ 二维数组详解
- C++:二维数组初始化
- [C] char 二维数组
- C#-二维数组---ShinePans
- C语言二维数组
- OC实现简单的点名器
- Java关键字final
- iOS应用内支付(IAP)的那些坑
- OC利用delegate实现霓虹灯效果
- Object-C系列<Xcode中ARC 下两种释放对象的方法>
- Objective-C 二维数组详解
- Java编码问题
- UISegmentedControl详解
- should not include d3dtypes.h when compiling for DX8 or newer interfaces
- 下拉菜单 spinner ,popupwindow, 自定义popupwindow总结
- 在linux文本中打开出现乱码问题
- 适合初学者理解的A*(A星)算法(转)
- ppm内存溢出问题解决
- UML-状态图、活动图和交互图