0

我用 CoreData 保存数据。我有一个数组,最后一次出现的是 'nil' 值。我不想在 CoreData 中保存 'nil' 值。我尝试检查 'nil' 值,但我无法实现。我的代码:

for (NSManagedObject *category in array) 
{ 
        //if (![category isEqual:nil]) {     <- FAILED ATTEMPT
        //if (![category isFault]) {           <- FAILED ATTEMPT
        //if (category != NULL) {           <- FAILED ATTEMPT

         [ more Objective-C code ...]

         // Insert Objects in the Core Data
         theLine = [NSEntityDescription insertNewObjectForEntityForName:entName
                                                                          inManagedObjectContext:context];
        //}
  }

我不明白为什么很难检查 NSManagedObject 'nil value'。

在我的代码中,“类别”是一个 NSManagedObject。我想知道它何时具有“零”值:

  • (NSManagedObject) isEqual
  • (NSManagedObject) isFault
  • (NSManagedObject) = NULL

这些选项中的任何一个都不会运行。谁能帮我?

提前非常感谢。

4

1 回答 1

1

我想如果你只是使用if(category)或者if(category == nil)他们应该检查它是否等于 nil。

如果做不到这一点,你可以做一个 for 循环,如:

for (int cycle =0 ; cycle < [array count]; cycle++){
   if ([[array objectAtIndex:cycle]isKindOfClass[NSNull class]]){


////Do some code here

   }

}

这将检查对象的值是否为 Null,因为您的循环只会查看 NSManagedObjects

于 2012-08-31T19:52:30.923 回答