當我將值賦給bank時:banca.name = @"CheBanca!";
以下條件返回true。爲什麼由JSON返回的NSString和字符串不相等,雖然兩者都包含相同的值
if([email protected]"CheBanca!"){
header.bankNameLabel.textColor=[UIColor greenColor];
}
但是,當我給你相同的值:banca.name = [jsonBanca objectForKey:@"nome_banca"];
條件返回false雖然NSLog(@"Bank name: %@", [jsonBanca objectForKey:@"nome_banca"]);
輸出值Bank name: CheBanca!
下面的代碼顯示瞭如何獲得jsonBanca:
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
[responseData release];
NSDictionary *results = [responseString JSONValue];
[responseString release];
NSArray *jsonBanche = [results objectForKey:@"banche"];
NSLog(@"%@",jsonBanche);
NSMutableArray *banks = [NSMutableArray arrayWithCapacity:jsonBanche.count];
for (int i=0; i<jsonBanche.count; ++i) {
NSDictionary *jsonBanca = [jsonBanche objectAtIndex:i];
}
此代碼NSLog(@"%@",jsonBanche);
退還銀行:
{
"nome_banca" = "CheBanca!";
"nome_prodotto" = "Conto Deposito";
rating = "A-1";
}, ...
問題是爲什麼這兩個字符串@「CheBanca!」和JSON收到的字符串不相等,儘管它們包含相同的短語。並且如何讓它們在條件下等於返回true。
可能的重複[如果比較兩個NSString對象時「a == b」爲false?](http://stackoverflow.com/questions/8598599/if-ab-is-false-when-comparing-two- nsstring-objects) – Mark 2012-01-03 14:04:45