2011-07-26 185 views
1

我有目標C一些簡單的問題,也許你可以提供幫助。串/ UTF8問題

我有2個字符串,得到他們的價值這樣的:

triger = [NSMutableArray arrayWithObjects:[NSString stringWithFormat: @"%f", x], 
              [NSString stringWithFormat: @"%f", y], 
              nil]; 

X = [triger objectAtIndex:0]; // coordinates 
Y = [triger objectAtIndex:1]; 

NSLog(@"%@", Y); 
NSLog(@"%@", X); 

if (Y == @"0" && X == @"0") // TOUCH TRIGER 

現在的NSLog是顯示我的值y = 0,X = 1,和if語句經常做.. 這是爲什麼 ??我究竟做錯了什麼 ?

謝謝。 。 。 。 。 。

回答

1

我認爲你需要改變,如果聲明這是你的:

if([Y isEqualToString:@"0"] && [X isEqualToString:@"0"]) 
+0

非常感謝!爲什麼我不能以我的方式做到這一點?如果我想檢查是否不相等,這是怎麼回事? – Curnelious

+1

因爲NSStrings是對象,所以你不能檢查它的方式。 isEqualToString是一個返回布爾值的方法。所以,如果你想檢查不等於你可以這樣做:[Y isEqualToString:@「0」] – Joel

+1

要澄清一下喬爾你說的方式,你只是測試,如果兩個對象是相同的實例,(同一位置在內存中),而isEqualToString:測試兩個字符串的內容,看看他們是等價的。 –