If-else:NSString

时间:2013-10-22 15:35:10

标签: objective-c

我想做以下事情:如果country ==“Россия”,有些动作...... 但是我的if-else语句不起作用。我该怎么办? 提前致谢。 我的代码:

   NSLocale *locale = [NSLocale currentLocale];
        NSString *countryCode = [locale objectForKey:NSLocaleCountryCode];
        NSString *country = [locale displayNameForKey:NSLocaleCountryCode value: countryCode];
        NSLog(@"%@", country);

        if (country == @"Россия") {
            NSLog(@"GO RUSSIA");
        }
        else {
            NSLog(@"You are not russian");
        }

3 个答案:

答案 0 :(得分:8)

您需要使用NSString中的比较方法:

if ([country isEqualToString: @"Россия"]) {
   ...
}

简单地使用==将比较原始指针值,而不是实际的字符串值。

答案 1 :(得分:3)

此:

if (country == @"Россия") 

不是比较NSString的方法。

试试这个:

if ([country isEqualToString:@"Россия"])

答案 2 :(得分:0)

如果你想在==中编写条件,那么只能编写整数或Bool变量 如果你想比较字符串内容,那么使用下面的equaltostring api

if ([country isEqualToString: @"Россия"]) {
}