我很难过。我有一个NSMutableDictionary w /嵌套字典,我在枚举中创建一个嵌套字典中特定键值的数组,但我想要排除两个“键”。
如果我排除一个密钥,我可以这样做,但是一旦我尝试使用“||”或者我的If语句中的运算符它停止工作,只是将所有对象添加到我的新数组中,而不是所有对象,但是我试图过滤掉这两个对象。
我的枚举逻辑:
for (NSString *key in self.myMutDictionary) {
theBool = [key isEqualToString:@"First"];
NSLog(@"Is key = to First? %@", (theBool ? @"YES" : @"NO"));
if ((![key isEqualToString:@"First"]) || (![key isEqualToString:@"Second"])) {
newDict = [self.myMutDictionary objectForKey:key];
[self.filteredArray addObject:[newDict objectForKey:@"Third"]];
NSLog(@"Filtered Array: %@", self.filteredArray);
}}
感谢您的帮助!
答案 0 :(得分:2)
更改||到&&
如果它不是第一个而不是第二个,那么包含它。
你想要排除(A或B),但你要反转整个表达式来选择要包含的内容,所以它应该是(!A AND!B)