IOS开发基础之二维数组详解

发布时间 - 2026-01-11 00:36:19    点击率:

IOS开发基础之二维数组详解

首先我们知道OC中是没有二维数组的,二维数组是通过一位数组的嵌套实现的,但是别忘了我们有字面量,实际上可以和C/C++类似的简洁地创建和使用二维数组。这里总结了创建二维数组的两种方法以及数组的访问方式。

通过字面量创建和使用二维数组(推荐)

 // 1.字面量创建二维数组并访问(推荐)
  NSArray *array2d = @[
             @[@11,@12,@13],
             @[@21,@22,@23],
             @[@31,@32,@33]
             ];
  // 字面量访问方式(推荐)
  NSLog(@"array2d[2][2]:%@",array2d[2][2]);
  // 数组对象函数访问
  NSLog(@"array2d[2][2]:%@",[[array2d objectAtIndex:2] objectAtIndex:2]);

打印结果:

2017-01-05 21:59:49.694 SingleView[10483:506166] array2d[2][2]:33
2017-01-05 21:59:49.695 SingleView[10483:506166] array2d[2][2]:33

通过嵌套原本的数组对象使用二维数组

 // 2.另外一种循环嵌套穿件二维数组的方式
  NSMutableArray *mulArrayD1 = [[NSMutableArray alloc]init]; // 第一维数组
  // 添加第二维
  for(NSUInteger i = 1;i <= 3; i++) {
    NSArray *arrayD2 = @[@(i*10+1), @(i*10+2), @(i*10+3)];
    [mulArrayD1 addObject:arrayD2];
  }
  // 字面量访问方式(推荐)
  NSLog(@"array2d[2][2]:%@",mulArrayD1[2][2]);
  // 数组对象函数访问
  NSLog(@"array2d[2][2]:%@",[[mulArrayD1 objectAtIndex:2] objectAtIndex:2]);

打印结果:

2017-01-05 21:59:49.695 SingleView[10483:506166] array2d[2][2]:33
2017-01-05 21:59:49.695 SingleView[10483:506166] array2d[2][2]:33

问题:

OC中是否有二维数组,如何实现?

OC中没有二维数组,但可以通过一维数组的嵌套实现。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# IOS中的二维数组  # IOS  # 二维数组  # 开发数组  # iOS中NSArray数组常用处理方式  # IOS开发之判断两个数组中数据是否相同实例详解  # axios向后台传递数组作为参数的方法  # IOS开发之路--C语言数组和字符串  # 在axios中使用params传参的时候传入数组的方法  # iOS对数组进行排序的实例代码  # iOS 数据结构之数组的操作方法  # ios基础教程之常见的数组使用方法  # 两种  # 可以通过  # 希望能  # 别忘了  # 谢谢大家  # 如何实现  # 总结了  # array2d  # NSArray  # OC  # br  # strong  # pre  # cpp  # class  # brush  # alloc  # NSMutableArray  # init 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  IOS倒计时设置UIButton标题title的抖动问题  米侠浏览器网页背景异常怎么办 米侠显示修复  javascript基于原型链的继承及call和apply函数用法分析  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  如何快速上传自定义模板至建站之星?  JavaScript数据类型有哪些_如何准确判断一个变量的类型  ,交易猫的商品怎么发布到网站上去?  如何在景安云服务器上绑定域名并配置虚拟主机?  Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  Laravel如何创建自定义Facades?(详细步骤)  深圳网站制作平台,深圳市做网站好的公司有哪些?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程  如何在局域网内绑定自建网站域名?  如何在橙子建站中快速调整背景颜色?  如何快速配置高效服务器建站软件?  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程  Swift开发中switch语句值绑定模式  jQuery validate插件功能与用法详解  如何基于云服务器快速搭建网站及云盘系统?  高性能网站服务器部署指南:稳定运行与安全配置优化方案  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  大连网站制作公司哪家好一点,大连买房网站哪个好?  网站制作报价单模板图片,小松挖机官方网站报价?  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  高性价比服务器租赁——企业级配置与24小时运维服务  如何快速生成ASP一键建站模板并优化安全性?  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  百度浏览器如何管理插件 百度浏览器插件管理方法  如何在云主机上快速搭建网站?  Laravel如何使用Eloquent进行子查询  如何为不同团队 ID 动态生成多个“认领值班”按钮  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  如何将凡科建站内容保存为本地文件?  网站页面设计需要考虑到这些问题  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  Laravel如何实现用户密码重置功能?(完整流程代码)  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  Windows Hello人脸识别突然无法使用  如何在阿里云部署织梦网站?  Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例  如何快速选择适合个人网站的云服务器配置?