容器类对象:枚举 NSEnumerator、字典

2023-11-10

一、枚举:NSEnumerator

  • 依附于集合类(NSArray,NSSet,NSDictionary),没有用来创建实例的接口。
  • NSEnumerator的nextObject方法可以遍历每个集合元素,结束返回nil,通过与while结合使用可遍历集合中所有项
  • 对可变数组进行枚举操作时,不能通过添加或删除对象这类方式来改变数组容器。

创建枚举:向容器类对象请求枚举器

-(NSEnumerator *)objectEnumerator;

代码实例:

    NSEnumerator *enumerator;
    enumerator =[array objectEnumerator];


浏览集合类对象的全部元素 

-(id)nextObject;

代码实例:

    NSEnumerator *enumerator;
    enumerator =[array objectEnumerator];
    id thingie;
    while (thingie = [enumerator nextObject])
    {
        NSLog(@"i found %@",thingie);
    }

二、字典NSDictionary

字典就是关键字及其定义的集合,也称散列表或关联数组。

是在给定关键字(常为NSString类型的对象)下存储一个数值(任何类型的对象)。

使用键查询的优化存储方式,可立即找出要查询的数据&#x

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

容器类对象:枚举 NSEnumerator、字典 的相关文章

随机推荐

  • JavaFX通过Controller类实现第二窗口销毁和程序退出

    Preface Q 为什么有此文 A 不能高度自定义化 网上大部分文章是通过简易的warning窗口 或者 information窗口实现的 且过于繁琐 大部分放在了Main java 不好弄 原理 Controller类中关键性代码 具体
  • MYSQL——模糊查询:like

    模糊查询指的是在数据中按照一定模糊的条件进行搜索 模糊查询的核心在于通配符的使用 通过使用通配符可以匹配不同的字符或字符串 一般模糊查询语句如下 SELECT 字段 FROM 表 WHERE 某个字段 LIKE 条件 表示任意0个或多个字符
  • css 背景效果_软件技术:我写CSS的常用套路(附demo的效果实现与源码)

    前言 本文是笔者写CSS时常用的套路 不论效果再怎么华丽 万变不离其宗 1 交错动画 有时候 我们需要给多个元素添加同一个动画 播放后 不难发现它们会一起运动 一起结束 这样就会显得很平淡无奇 那么如何将动画变得稍微有趣一点呢 很简单 既然
  • Harbor仓库介绍与搭建过程

    一 介绍 Harbor 是一个英文单词 意思是港湾 港湾是干什么的呢 就是停放货物的 而货物呢 是装在集装箱中的 说到集装箱 就不得不提到Docker容器 因为docker容器的技术正是借鉴了集装箱的原理 所以 Harbor正是一个用于存储
  • mysql数据库知识整理

    目录 InnoDB和MyISAM引擎常见区别 索引的基本原理 聚簇索引和非聚簇索引的区别 索引的数据结构及优势 索引的设计原则 innerdb主键索引自增的原因以及联合索引最左原则 锁的类型有哪些 MySQL执行计划 InnoDb引擎的执行
  • 关于网络编程里自定义序列化(字节化)遇到的坑

    1 结构体字节流化可能会出现的问题 网络编程里很多时候需要发送结构体 比如下面定义一个最简单的拥有多个元素的结构体 typedef struct msg int len char name 24 msg t 在保持客户端和服务端程序的结构体
  • Servlet实现文件上传

    定义 在Servlet3 0之前实现文件上传需要借助Apache的上传组件 在3 0中 提供了一个Servlet API标准去支持文件上传 上传前置 表单页面设置 设置enctype属性格式为multipart form data meth
  • flutter多种底部导航栏样式

    1 底部导航栏 外弧样式 实现代码 引入flutter的dart库 import package flutter material dart 启动函数 void main gt runApp MyApp 自定义组件 class MyApp
  • springboot中使用注解获取前台header信息

    今天在写vue时 需要实现一个功能 就是前台通过header 请求头 将token发送到服务端 后台使用的是springboot 第一下想到是springboot注解 但是百度了挺久发现很多人都是使用的原生servlet对象来获取头信息 其
  • 【Educoder python 作业答案】国防科技大学《大学计算机基础》※ 冯·诺依曼体系结构——模拟 TOY 计算机(MOOC版)

    Educoder python 作业答案 国防科技大学 大学计算机基础 冯 诺依曼体系结构 模拟 TOY 计算机 MOOC版 第1关 程序加载 第2关 执行一条指令 第3关 自动执行 TOY 程序 第1关 程序加载 mem 1000 初始化
  • Effective C++ 条款十二:复制对象时勿忘其每一个成分

    这句话包含两部分的意思 第一部分是要考虑到所有成员变量 特别是后加入的 相应的拷贝构造函数和赋值运算符要及时更新 第二部分是在存在继承时 不要遗忘基类部分的复制 先看第一部分的意思 举个例子 class SampleClass privat
  • [Python人工智能] 二.TensorFlow基础及一元直线预测案例

    从本篇文章开始 作者正式开始研究Python深度学习 神经网络及人工智能相关知识 前一篇文章讲解了TensorFlow的安装过程和神经网络基础概念 这篇文章将分享TensorFlow基础并介绍一元直线预测的案例 主要结合作者之前的博客和 莫
  • ubuntu升级python版本(3.5->3.6)

    安装aioredis时提示Python版本需 gt 3 5 3 所以进行升级 命令如下 获取最新的python3 6 将其添加至当前apt库中 并自动导入公钥 sudo add apt repository ppa jonathonf py
  • Tomcat日志文件过大导致系统故障处理办法

    1 远程登录系统 2 查看日志文件 catalina out 文件大小 root localhost cd usr local apache tomcat logs root localhost logs du h catalina out
  • 创建Javaweb、导入jar包、配置Tomcat

    一 第一大步 新建一个项目 文件 新建 项目 空项目 项目名称 可以随便起 与3要保持一致 一般情况3会在2后自动生成 点完成即可 第二大步 新建模块 文件 新建 模块 java模块 点击下一步即可 模块名称 起名字 完成 第三大步 让模块
  • mac pro 安装arduino ide 驱动

    mac pro 安装arduino ide 需要安装额外驱动去识别USB 直接安装下面文件即可解决
  • cas 5.2.0登陆界面添加验证码和校验功能

    本文分为4个部分 1 登录界面添加验证码 2 自定义登录对象 增加一个验证码字段 3 自定义cas的登录流程 完成自定义校验 4 返回自定错误信息 1 配置验证码 生成验证码 使用google的kaptcha 需引入jar的包如下
  • 凡科建站上传html,如何将自己设计的网页上传到网站上?如何把自己制作的网页上网?自己在本地建的网站,别人怎么访问?...

    如何将自己设计的网页上传到网站上 如何把自己制作的网页上网 自己在本地建的网站 别人怎么访问 下面就来一起看看吧 如何将自己设计的网页上传到网站上 首先租用空间保管网页和程序文件 租用域名 申请通过 关于免费建站 然后将空间IP地址分析到域
  • 区块链节点和区块区别_区块链的节点是什么?

    区块链节点 通常指的是区块链网络中的计算机 也就是说任何连接到区块链网络的计算机 包括手机 矿机等 都称为节点 比如说比特币网络是一个公有链 用户在自己的联网电脑上运行比特币程序时 这个电脑就成为比特币区块链网络中的一个节点 操作一个节点可
  • 容器类对象:枚举 NSEnumerator、字典

    一 枚举 NSEnumerator 依附于集合类 NSArray NSSet NSDictionary 没有用来创建实例的接口 NSEnumerator的nextObject方法可以遍历每个集合元素 结束返回nil 通过与while结合使用