首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    iOSNSSet 和 NSArray的区别

    NSSet: ●NSSet , NSMutableSet是无序的集合,在内存中存储方式是不连续的 ●通过anyObject来访问单个元素 ●遍历NSSet中的每个元素。...通过forin循环来遍历 好处:在搜索一个一个元素时NSSet比NSArray效率高,主要是它用到了一个算法hash 。...应用场景: 比如重用Cell的时候,从缓存池中随便获取一个就可以了,无需按照指定顺序来获取 当需要把数据存放到一个集合中,然后判断集合中是否有某个对象的时候 NSArray ●NSArray是有序集合...,在内存中存储位置是连续的 好处:有序访问 应用场景:在绝大多数需要依赖顺序的情况下(比如tableView的数据源集合,在实际操作中要根据下标来获取对象) 通过下标来访问

    74210

    @property 关键字区别 - copy & mutableCopy

    ,因为确实很多面试问题,可能我们只是偶尔遇到,或者仅仅知道怎么用,但是却没有进行探究,接下来,我来讲一下,面试过程中几乎必问的 @property 关键字问题~ 来自sunnyxx大神的面试题 对于数组...; ·array2 是 NSMutableArray类型的,使用strong 是正确的; ·array3 是 NSMutableArray类型的,使用了copy,可能会导致问题 -->系统认为他是mutable...约等于 NSMutableArray But!!...关键点来了:你遇到过NSMutableArray 添加对象的时候,失效的问题吗!...所以这里本质是给一个不可变的数组(NSArray 添加对象)肯定报错 ---- 第三步:改第二步,使用mutableCopy实现 NSArray ->转 NSMutableArray 没有添加成功 关键问题来了

    87470

    OC知识--Foundation框架详尽总结之『数组类』

    框架中的数组类(NSArray、MutableNSArray)的使用做一个详细的总结。...NSArray介绍 NSArray是OC中的数组类,开发中建议尽量使用NSArray替代C语言中的数组 C语言中虽然也有数组,但在开发的过程中存在一些弊端 int array[4] = {10, 89...NSArray的简写形式 自从2012年开始,Xcode的编译器多了很多自动生成代码的功能,使得OC代码更加精简 之前数组的创建方式 [NSArray arrayWithObjects:@"Jack",...NSArray与字符串之间的转换 1....NSMutableArray介绍 NSMutableArray是NSArray的子类 NSArray是不可变的,一旦初始化完毕后,它里面的内容就永远是固定的,不能删除里面的元素,也不能再往里面添加元素

    70540

    Objective-C中的集合类

    在Objective-C中的集合类中主要包括不可变的数组--NSArray,  可变的数组--NSMutableArray,   不可变的字典--NSDictionary,    可变的字典--NSMutableDictionary...NSArray也是OC中的一个对象,使用NSArray也需要进行实例化,前面的博客在类的初始化中提到了便利初始化函数和便利构造器,在NSArray中也少不了这两样东西我们可以通过NSArray的便利初始化函数或者便利构造器进行...NSArray *array1 = [[NSArray alloc] initWithObjects:@"aaa", @"bbb", @"ccc", nil]; //NSArray的便利构造器 NSArray...            NSArray的容量是固定的,而NSMutableArray的容量是可变的,我们可以在NSMutableArray实例化的时候先初始化一个容量,不过这个容量不是固定的,不够的时候会自动增加...NSMutableArray是NSArray的子类,是对NSArray的一个扩充。

    1.1K70

    iOS中播放gif动态图的方式探讨 原

    NSArray* heights))dataBlock{     //通过文件的url来将gif文件读取为图片数据引用     CGImageSourceRef source =...(source);     //定义一个变量记录gif播放一轮的时间     float allTime=0;     //存放所有图片     NSMutableArray * imageArray ...= [[NSMutableArray alloc]init];     //存放每一帧播放的时间     NSMutableArray * timeArray = [[NSMutableArray alloc...]init];     //存放每张图片的宽度 (一般在一个gif文件中,所有图片尺寸都会一样)     NSMutableArray * widthArray = [[NSMutableArray alloc...]init];     //存放每张图片的高度     NSMutableArray * heightArray = [[NSMutableArray alloc]init];     //遍历

    1.9K20

    iOS - 关于 KVC 的一些总结

    数组运算符 根据运算符的条件,将符合条件的对象以一个NSArray实例返回。 @unionOfObjects 读取集合中每个元素的右键路径指定的属性,放在一个NSArray实例中并返回。...我们可以在消息接收者类中实现validate:error:的方法来自定义逻辑返回YES或NO。...NSMutableArray 搜索模式 以下是mutableArrayValueForKey:方法的默认实现,给定一个key作为输入参数,返回属性名为key的集合的代理对象(这里指NSMutableArray...如果找到,就会向KVC调用方发送一个set:消息,来返回一个响应NSMutableArray消息的代理对象。否则执行③。...如果找到就返回一个代理对象,该代理对象将接收所有NSMutableArray消息,通常是NSMutableArray或其子类。否则执行④。

    1.9K10
    领券