-[NSNull countByEnumeratingWithState:objects:count:]:

当数组为空时遍历数组容易出这样的问题, -[NSNull countByEnumeratingWithState:objects:count:]: unrecognized selector sent to instance 0x3e4e85e0

解决办法就是在遍历数组之前先要判断

if (![array isKindOfClass:[NSNull class]])

{

  for循环

}

时间: 2024-09-29 08:05:30

-[NSNull countByEnumeratingWithState:objects:count:]:的相关文章

[__NSCFString countByEnumeratingWithState:objects:count:]: unrecognized selector sent to instance 0x17deba00

还真是一波未平一波又起,又出现了这个问题,详情如下: -[__NSCFString countByEnumeratingWithState:objects:count:]: unrecognized selector sent to instance 0x17deba00 *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString countByEnumer

iOS7: 漫谈基础集合类(NSArray,NSSet,NSOrderedSet,NSDictionary,NSMapTable,NSHashTable, NSPointerArray, NSIndexSet,NSCache, NSFastEnumeration)

基础集合类是每一个Mac/iOS应用的基本组成部分.在本文中,我们将对”老类”(NSArray, NSSet)和”新类”(NSMapTable, NSHashTable, NSPointerArray)进行一个深入的研究,探索每一个的效率细节,并讨论其使用场景. 提示:本文包含一些参照结果,但它们并不意味着绝对精确,也没有进行多个.复杂的测试.这些结果的目的是给出一个快速和主要的运行时统计.所有的测试基于iPhone 5s,使用Xcode 5.1b1和iOS 7.1b1,64位的程序.编译选项设

Ojbect-C2 3、NSArray和NSMutableArray数组的使用

Adopted Protocols NSCoding encodeWithCoder: initWithCoder: NSCopying copyWithZone: NSMutableCopying mutableCopyWithZone: NSFastEnumeration countByEnumeratingWithState:objects:count: Tasks Creating an Array + array + arrayWithArray:   -- + arrayWithCo

Understanding the Objective-C Runtime

Understanding the Objective-C Runtime The Objective-C Runtime is one of the overlooked features of Objective-C initially when people are generally introduced to Cocoa/Objective-C. The reason for this is that while Objective-C (the language) is easy t

理解 Objective-C Runtime

当人们初学 Cocoa/Objective-C 时,Objective-C Runtime 是被忽略的特性之一.原因是 Objective-C(这门语言)很容易在几小时内就熟悉,新学 Cocoa 的人花费他们大部分的时间学习 Cocoa 框架和适应它是如何工作的.然而每个人至少应该知道一些 runtime 的工作细节,需要比知道编译器会把 [target doMethodWith:var1];  转换为 objc_msgSend(target,@selector(doMethodWith:),v

django的queryset和objects对象

1. queryset是查询集,就是传到服务器上的url里面的内容.Django会对查询返回的结果集QerySet进行缓存,这里是为了提高查询效率. 也就是说,在你创建一个QuerySet对象的时候,Django并不会立即向数据库发出查询命令,只有在你需要用到这个QuerySet的时候才回去数据库查询. 2. Objects是django实现的mvc框架中的数据层(model)m,django中的模型类都有一个objects对象,它是一个django中定义的QuerySet类型的对象, 它包含了

089:QuerySet API详解-count和exists

QuerySet API详解-count和exists: count :获取提取的数据的个数.如果想要知道总共有多少条数据,那么建议使用 count ,而不是使用 len(articles) 这种.因为 count 在底层是使用 select count(*) 来实现的,这种方式比使用 len 函数更加的高效: # book_sum = Book.objects.all() # print(len(book_sum)) result = Book.objects.count() print(re

使用FastCoder写缓存单例

FastCoder可以存储字典,数组,鄙人将FastCoder封装,CoreData可以缓存的东西,用这个都可以缓存,但是只适合缓存少量的数据(不适合存储几万条数据). 基于文件的类请参考上一章节内容 使用详情: 源码: 使用的缓存文件 SharedFile.h 与 SharedFile.m // // SharedFile.h // Array // // Created by YouXianMing on 14/12/1. // Copyright (c) 2014年 YouXianMing

利用runtime,避免UIButton 重复点击, 可变数组和可变字典为nil,或者数组越界导致的崩溃

Demo链接: https://github.com/ShaoWenLe/Runtimer-Demo.git 参考文章: http://www.jianshu.com/p/080a238c62b9 相关Runtime介绍: http://www.cocoachina.com/ios/20160523/16386.html http://www.cocoachina.com/ios/20160628/16843.html 1 #import <Foundation/Foundation.h> 2