2012-03-22 188 views
-1

可能重複:
String comparison in Objective-C如何將字符串變量與xcode中的字符串進行比較?

我意識到這個問題是不是很具體。我正在研究一個簡單的瑣事遊戲來測試一些事情,現在它有5個陣列,一個用於問題,一個用於第一個答案選項,一個用於第二個答案選項,一個用於第三個,還有一個用於說明哪一個是正確的。

我有一個if語句來檢查按下的按鈕是否與正確的答案匹配。

Answer2連接到將在我的trivia應用程序中選擇選項b的按鈕,strCorrect是保存單個字符的字符串數組,它表示三個中哪個選項是正確的,intCurrentQuestion只是一個用於引用的整數數組的索引。

-(IBAction)Answer2{ 
    if ([strCorrect objectAtIndex:intCurrentQuestion] == [NSString stringWithFormat:@"B"]){ 
     //do these things blah blah 
    } 
} 

問題是編譯時沒有錯誤,但它也不起作用。我如何去做這項工作?

出於測試目的,我欺騙並將strCorrect傳遞給nib中的隱藏標籤,然後將標籤文本與@「B」進行比較,但它的工作原理很好,但它的工作原理很糟糕。

+2

鍵入這個問題的標題到谷歌。第一擊是你的答案。 – 2012-03-22 03:43:25

回答

0

你在做什麼在你上面的代碼比較內存地址兩個字符串,而不是自己的價值。做比較兩個NSStrings你必須這樣做:

[[strCorrect objectAtIndex:intCurrentQuestion] isEqualToString:@"B"]; 
0
[[strCorrect objectAtIndex:intCurrentQuestion] isEqualToString:@"B"] 
相關問題