- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当使用键值编码在 NSArrays
上使用集合运算符(例如 @min
、@max
)时,如果出现以下情况之一,我会得到一个异常数组中的值为 NSNull null
。
在使用 valueForKeyPath
使其工作之前,我必须删除所有出现的 NSNull null
:
NSMutableArray *array = otherArray.mutableCopy;
[array removeObjectIdenticalTo:[NSNull null]];
NSNumber *minValue = [array valueForKeyPath:@"@min.self"];
NSNumber *maxValue = [array valueForKeyPath:@"@max.self"];
然而,根据Apple's Documentation我的代码应该在不删除 NSNull null
的情况下工作:
If the value of the right side of the key path is nil, it is ignored.
如何使用 keyPath 语句获取数组的最小值和最大值,而不会出现运行时异常,也不必删除之前的 NSNull null
?
最佳答案
您误解了文档。这个:
If the value of the right side of the key path is nil, it is ignored.
表示如果@min.field 为nil,它将被忽略。但是您正在做的是尝试计算包含 NSNumber 的集合的最小值和最大值。因此可能会使用 decimalValue 方法,但 NSNull 不符合该键的键值。所以你应该继续从集合中删除 NSNull 对象。
关于ios - 包含 NSNull 值的集合的键值编码和集合运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14787844/
我遇到内存管理问题,无法在 iOS 上解决问题。我正在从 SQLite 数据库获取数据,其中某些单元格可能为空。因此,为了处理这种情况,如果为空,我将 [NSNull null] 分配给我的收件人,如
在我们的项目中,当网络上有东西返回 JSON 时,我们的 iPhone 应用程序偶尔会崩溃,其中包含 nil。当然,我们确实有一个帮助类,它负责处理此类问题。然而,人们很容易出错,并且确实在 NSDi
在苹果的例子中我看到了这个: myController *controller = [viewControllers objectAtIndex:page]; if ((NSNull *)contro
我在尝试显示标签时收到 [NSNull rangeOfCharacterFromSet:]: 异常。错误显示 'NSInvalidArgumentException', reason: '-[NSNu
我有一个简单的 NSMO,它有一个关系字段。有时我需要删除关系但保留对象。这是对象,它与 Person 具有一对一关系(person 与 LineUp 具有一对多关系): @objc (LineUp)
赏金事件只剩一天了! 您能否让自定义动画属性与 UIView animateWithDuration block 语法一起使用? 我一直致力于为自定义 CALayer 上的自定义动画属性创建我自己的隐
我正在尝试将字符串设置为“如果 [object objectForKey@"display_name"] 为 NULL,则不显示名称”。它在日志中崩溃了 2011-06-16 10:58:36.251
是否有可能让 Core Data 允许分配 NSNull?我正在使用 JSONKit它默认分配 NSNull。我希望能够像这样进行反序列化: - (void)deserialize:(NSDictio
针对iOS应用进行编码,我发现有潜在的原因禁止继承NSNumber,NSNull,... blabla。 如果我尝试这样做,编译器不会失败,但是运行会立即崩溃,而没有任何使用信息,有人知道原因吗? 最
我在错误消息中收到了以上内容。 [NSNull getCharacters:]: 我在文档中找不到它。谁能给我解释一下这是什么意思? 非常感谢。 编辑:这与链接到的关于 NSNull getChara
当使用键值编码在 NSArrays 上使用集合运算符(例如 @min、@max)时,如果出现以下情况之一,我会得到一个异常数组中的值为 NSNull null。 在使用 valueForKeyPath
我在以前的开发人员离开后转移到的项目中有以下 block NSObject *object = (NSObject *)string; if([object isEqual:[NSNull null]
我有一个循环,第一次运行良好,但第二次运行时我得到: -[NSNull count]: unrecognized selector sent to instance 0x3a094a70 *** T
if let action = self.info?["action"] { switch action as! String { .... } } else {...
我有一个这样结构的数组, [ { "Id": 20, "Name": "Name String", "Email
我实际上是在尝试在 Xcode8.1 上使用 Swift3 解析 Json 对象。这是我的代码: if let objData = objJson["DATA"] as! NSDictionary?
allItems是 NSMutableArray当用户单击加号按钮时,方法 createItem被叫。我试图只为每个偶数索引添加对象(类 BNRItem ),所以我尝试放置 NSNull 的实例对于奇
我的 iPhone 应用程序崩溃,出现以下错误: [724:95876] *** Terminating app due to uncaught exception 'NSInvalidArgumen
我有可能包含对象的 JSON 响应。在我的模型对象中,我这样做: _price3 = self.serverData[@"price3"]; 我想做类似的东西: _price3 = self.se
我遇到了这个异常,但我无法找出问题所在。 我尝试添加异常断点和符号断点,但它没有显示任何更有用的数据。它在 main.h 返回时崩溃,回溯中没有任何内容 这是异常(exception): 20
我是一名优秀的程序员,十分优秀!