Foundation框架—集合

简介: Foundation框架—集合 一、NSArray和NSMutableArray (一)NSArray不可变数组 (1)NSArray的基本介绍 NSArray是OC中使用的数组,是面向对象的,以面向对象的形式操纵对象,是不可变数组。

 

Foundation框架—集合

一、NSArrayNSMutableArray

(一)NSArray不可变数组

(1)NSArray的基本介绍

NSArrayOC中使用的数组,是面向对象的,以面向对象的形式操纵对象,是不可变数组。

C语言数组有一个缺点即数组中只能存放同种数据类型的元素。

OC数组只能存放OC对象,不能存放非OC对象,如int,结构体和枚举等。

(2)NSArray的创建

 

(3)NSArray的访问

 (4)NSArray的遍历

数组的遍历有以下几种方式:

首先创建一个数组

 

第一种方法:使用for循环遍历

 

 

Block遍历的深入研究:

每拿到一个元素,就传递给obj,就会调用一次block,并且把当前的元素和索引位置当做参数传递给block

注意1break只使用在两种场合,即switch和循环结构中。

注意2stop参数用来停止遍历,其值若为YES,则停止。

 

(二)NSMutableArray可变数组

(1)NSMutableArray的基本使用

注意:NSMutableArray继承自NSArray,几乎拥有NSArray的一切方法。

 

 

二、NSSetNSMutableSet

(一)NSSet不可变集合

基本使用:

 

(二)NSMutableSet可变集合

基本使用:

 

(三)NSSetNSArray的对比

(1)共同点:

1)都是集合,都能够存放多个对象

2)只能存放oc对象,不能存放非oc对象类型(如int等基本数据类型和结构体,枚举等)。

3)本身都不可变,都有一个可变的子类。

(2)不同点:

1NSArray有顺序,NSSet没有顺序

三、NSDictionaryNSMutableDictionary

(一)NSDictionary不可变字典

(1)介绍

现实中的字典:根据索引找到具体的内容

OC中的NSDictionary:根据key找到value。里面存储的东西都是键值对。

(2)NSDictionary的创建

 

注意:快速创建字典是编译器特性。

(3)NSDictionary的访问

 

(4)NSDictionary的遍历

 

(二)NSMutableDictionary可变字典

(1)NSMutableDictionary的基本使用

 

(2)NSMutableDictionary的使用注意

 

注意:这种快速创建的方式只适用于不可变字典。

 

目录
相关文章
Foundation 标签1
Foundation 框架中的 `.label` 类用于为文本添加附加信息,如“新”、“警告”等。可以通过不同的类(如 `.secondary`、`.success`、`.info`、`.warning` 和 `.alert`)来改变标签的颜色,以适应不同的场景和需求。
|
3月前
|
前端开发
Foundation 标签2
通过使用 .radius 和 .round 类,可以轻松地为标签添加圆角效果。此外,还可以通过 CSS 修改标签的大小,以适应不同的设计需求。示例展示了不同样式的标签及其在不同标题级别中的应用。
|
9月前
|
前端开发 Java C语言
object c架构,swfit,SwiftUI的关系与架构选择
object c架构,swfit,SwiftUI的关系与架构选择
74 0
|
SQL 缓存 开发框架
推荐一个EntityFramework扩展的开源项目
通过必备功能扩展了DbContext:包括过滤器,缓存,提前查询,批量操作等EF扩展功能。
144 0
推荐一个EntityFramework扩展的开源项目
|
SQL 关系型数据库 MySQL
开源Dapper的Lambda扩展-Sikiro.Dapper.Extension V2.0
开源Dapper的Lambda扩展-Sikiro.Dapper.Extension V2.0
240 0
开源Dapper的Lambda扩展-Sikiro.Dapper.Extension V2.0
|
uml
封装自己的dapper lambda扩展-设计篇(一)
封装自己的dapper lambda扩展-设计篇(一)
241 0
封装自己的dapper lambda扩展-设计篇(一)
封装自己的dapper lambda扩展-设计篇(二)
封装自己的dapper lambda扩展-设计篇(二)
243 0
封装自己的dapper lambda扩展-设计篇(二)
|
开发者
编写自己的dapper lambda扩展-使用篇
编写自己的dapper lambda扩展-使用篇
290 0
|
iOS开发
Foundation 框架详细解析
Foundation框架详细解析 (一) —— 基本概览(一)Foundation框架详细解析 (二) —— Foundation的结构组成和它在iOS系统中的地位和位置(一)
2064 0

热门文章

最新文章