EqualToString 不工作

EqualToString not working

我有一个包含不同对象的数组,我需要找到一个包含特定文本的 NSString 属性 的数组。我想知道为什么以下不起作用:

for (int i = 0; i < self.arrValues.count; i++) {
    NSLog(@"arr value VM class %@", [self.arrValues[i] class]);
    id val = self.arrValues[i];
    if ([val  respondsToSelector:@selector(title)]){

        NSLog(@"ob-class-%@", [self.arrValues[i] class]);
        SideMenuItemVM *obj = self.arrValues[i];
        NSLog(@"title %@", obj.title);
        if ([obj.title isEqualToString:@"Мероприятия"]){
            NSLog(@"Got it");
        } 
    } 
}

它确实输出 title Мероприятия,但不输出第二个 NSLog。我错过了什么?

arr 值 VM class 输出 class of SideMenuItemVM,其中确实包含 属性 @property (nonatomic, strong) NSString *title;

所以,这里的输出看起来像

2016-08-23 11:19:33.420 project[56065:18112626] ob-class-SideMenuItemVM
2016-08-23 11:19:33.420 project[56065:18112626] title Мероприятия

如果有人遇到类似问题,我找到了答案,感谢我在评论中提供的帮助。在我引用我的 NSLog 声明后,我发现了一些奇怪的东西。 NSLog(@"title '%@'", obj.title); 的字符串输出 看起来像:2016-08-23 11:45:22.372 project[67747:18256287] TITl 'Мероприятия '

所以,这里实际上是一个新行,我不知道为什么。简单

  if ([obj.title containsString:@"Мероприятия"]){
                NSLog(@"got value");
   }

解决这个问题。