2012-03-24 11 views
-2

私は警告を取得しています:XCodeの警告: 'NSStringのは' に応答しないこと '-equals:'

'NSStringのは、' に応答しないこと '-equals:'

をし、私はなぜNSStringequalsに応答しないのか分かりません。コンパイラはanExpressionの要素がNSStringではないと仮定していますか?

+ (NSSet *)variablesInExpression:(id)anExpression 
{ 
    NSMutableSet *setOfVariables = [[NSSet alloc] init]; 
    for (NSString *str in anExpression) { 
     if (([str equals: @"x"] || [str equals: @"a"] || [str equals: @"b"]) 
      && ![setOfVariables member:str]) { 
      [setOfVariables addObject:str]; 
     } 
    } 
    return setOfVariables; 
    [setOfVariables release]; 
} 

ありがとうございました!

答えて

4

javaではありません。メソッドisEqualToString:を使用する必要があります。

if (([str isEqualToString:@"x"] || [str isEqualToString:@"a"] || [strisEqualToString: @"b"]) && ![setOfVariables member:str]) 
+0

うわー、私はちょうどそれをやったと信じられません。ありがとう! – 23ChrisChen

関連する問題