NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:@"your.plist"];
BOOL key2Exists = [[dict objectForKey:@"Parent1"] objectForKey:@"Key2"] != nil;
Что касается явного сравнения nil
, я иногда использую его, потому что это делает код более читабельным для меня (это напоминает мне, что переменная в левой части оператора является логической). Я также видел явное «логическое приведение»:
BOOL key2Exists = !![[dict objectForKey:@"Parent1"] objectForKey:@"Key2"];
Полагаю, это вопрос личных предпочтений.