0

文字列からhtml記号を変換してNSDictionaryに挿入する関数があります。おそらくメソッドまたは構文エラーだと思います。

HTML値を変換する関数:

  - (NSString *)convertMathSymbol:(NSString *)str{

         str = [str stringByReplacingOccurrencesOfString:@"−" withString:@"− "];
         str = [str stringByReplacingOccurrencesOfString:@"÷" withString:@"÷ "];
         str = [str stringByReplacingOccurrencesOfString:@"&multiply;" withString:@"× "];

         return str;
    }

NSDictionaryへの挿入:

 NSString *tempAns1 = [[sample objectAtIndex:0]objectAtIndex:1];
 [answer setObject:[[self convertMathSymbol:tempAns1] forKey:@"1"]];

エラー:

No visible @interface for 'NSString' declares the selector 'forKey:'

ポインタに感謝します...事前に感謝します...

4

3 に答える 3

3

NSString *にメッセージを送信していますが、その方法を説明します

あなたが持っている:

 [answer setObject:[[self convertMathSymbol:tempAns1] forKey:@"1"];

回答辞書の受信者を取り除くと、次のようになります。

 [[self convertMathSymbol:tempAns1] forKey:@"1"];

私が何を意味するのか分かりますか?

試す:

 [answer setObject:[self convertMathSymbol:tempAns1] forKey:@"1"];
于 2012-05-25T04:00:08.183 に答える
2

これを変える

[answer setObject:[[self convertMathSymbol:tempAns1] forKey:@"1"];

これに:

[answer setObject:[self convertMathSymbol:tempAns1] forKey:@"1"];

余分な'['があり、その前[self convertMathSymbol:tempAns1'にコンパイラが混乱しています。あなたがそれを書いた方法で、あなたはforKey:の結果にメッセージを送っています[self convertMathSymbol:tempAns1]。ものすごく単純...

于 2012-05-25T03:59:59.743 に答える
2

2行目の角かっこはバランスが取れていません。3つの[と2つの]があります。

于 2012-05-25T04:01:04.193 に答える