zoukankan      html  css  js  c++  java
  • Foundation框架—集合

    一、NSArrayNSMutableArray

    (一)NSArray不可变数组

    (1)NSArray的基本介绍

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

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

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

    (2)NSArray的创建

     

    (3)NSArray的访问

     (4)NSArray的遍历

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

    首先创建一个数组

     

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

     

     

    Block遍历的深入研究:

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

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

    注意2:stop参数用来停止遍历,其值若为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的使用注意

     

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

  • 相关阅读:
    js 各种常用js验证
    js url校验
    最近遇到的技术问题
    a标签的target的四个值
    新系统用到的新知识
    7 天打造前端性能监控系统
    前端必读:浏览器内部工作原理
    怎么判断ThreadPool线程池里的任务都执行完毕
    docker 在window 10 专业版的安装 && .net core 在docker的部署
    .net core 中后台获取前台 数据(post)的方法
  • 原文地址:https://www.cnblogs.com/YDBBK/p/4793290.html
Copyright © 2011-2022 走看看