在目标c中不是(!)

Poo*_*oja 3 objective-c operators

for (int i=0 ; i<=[secondSplitArrayValue count]; i++)   
{    
  if (![[secondSplitArrayValue objectAtIndex:i] isEqualToString:@"NULL"] ||  
  ![[splitArrayValue objectAtIndex:i] isEqualToString:@"Error"]   
    {  
        [secondSplitArrayValue removeObjectAtIndex:i];  
    }  
}  
Run Code Online (Sandbox Code Playgroud)

我试图删除特定索引处的数组值,其中字符串是非EQUAL(!=)为NULL或错误.但在调试时删除了NULL和Error存在的对象,但我想删除Null和Error不存在的对象.

Tov*_*vi7 8

你可能正在寻找这个我认为:

for (int i=0 ; i<=[secondSplitArrayValue count]; i++)   
{    
  if (!([[secondSplitArrayValue objectAtIndex:i] isEqualToString:@"NULL"] ||  
  [[splitArrayValue objectAtIndex:i] isEqualToString:@"Error"])   
    {  
        [secondSplitArrayValue removeObjectAtIndex:i];  
    }  
}  
Run Code Online (Sandbox Code Playgroud)

这样,只有在完成对两种情况的检查以及两次结果检查的OR运算之后,才会反转布尔运算.

  • 顺便说一句,`!(a || b)`==`!a &&!b`. (3认同)