как я буду сравнивать строковое значение с nsmutablearray - PullRequest
0 голосов
/ 31 октября 2011
if ([pArray objectAtIndex:2]==@"ROOT")
{
    NSLog(@"YES");
}
else {
    NSLog(@"NO");
}

Я использую этот код, но он не работает

Ответы [ 5 ]

1 голос
/ 31 октября 2011

Вы можете использовать

- (BOOL)containsObject:(id)anObject; 

, чтобы проверить, находится ли объект в массиве.например.[pArray containsObject:@"ROOT"];

если вам нужно проверить, равен ли конкретный элемент той строке, которую вы можете использовать.

[[pArray objectAtIndex:2] isEqualToString:@"ROOT"];

Оба будут возвращать YES, если они совпадают.

0 голосов
/ 31 октября 2011
        if (([pArray objectAtIndex:2]  != (id)[NSNull null])&([[pArray objectAtIndex:2] isEqual:@"ROOT"])){
        NSLog(@"String in array is %@",[pArray objectAtIndex:2]);
    }
    else {
       if([pArray objectAtIndex:2]  == (id)[NSNull null]){
        NSLog(@"Your Object is Null");
       }
else{
   NSLog(@"Your Object does not match");
}   
}
0 голосов
/ 31 октября 2011

Предполагая, что pArray содержит строки ... используйте следующее ...

if([[pArray objectAtIndex:2] isEqualToString:@"ROOT"])
0 голосов
/ 31 октября 2011

Вы должны использовать метод isEqualToString. Вы пытаетесь сравнить две ссылки в своем утверждении.

if ([[pArray objectAtIndex:2] isEqualToString:@"ROOT"])
0 голосов
/ 31 октября 2011

Использовать isEqualToString: метод:

if ([[pArray objectAtIndex:2] isEqualToString:@"ROOT"]){
...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...