3

「appendString を使用して不変オブジェクトを変更しようとしています:」というエラーが表示されます。

そして私のコードは

NSMutableString *resultString= [[NSMutableString alloc]init];


for (NSMutableString *s in self.ArrayValue)
{
    [resultString appendString:s];
    NSLog(resultString);

}  

ArrayValue は NSMutableArray です。
どこに問題があるのか​​理解できません

前もって感謝します

4

3 に答える 3

7

投稿されたように、あなたが持っているコードはあなたが説明したエラーをあなたに与えません。おそらく、resultString の割り当てと for ループの間のどこかで、通常の NSSring で上書きしています。

于 2011-03-08T13:47:10.537 に答える
2
    ArrayValue = [NSMutableArray arrayWithObjects:@"b",@"o",@"n",nil];
NSMutableString *resultString= [[NSMutableString alloc]init];

for (NSMutableString *s in self.ArrayValue)
{
    [resultString appendString:s];
    NSLog(resultString);

}  

私のために働く..

于 2011-03-08T13:48:16.113 に答える
2

次のようにしてください:

わたしにはできる...

    NSMutableString *resultString= [[NSMutableString alloc]init];
NSMutableArray *ArrayValue=[[NSMutableArray alloc]init];
[ArrayValue addObject:@"One"];
[ArrayValue addObject:@"Two"];
[ArrayValue addObject:@"Three"];

for (NSMutableString *s in ArrayValue)
{
    [resultString appendString:s];
    NSLog(@"%@",resultString);------->You should use %@ to print the string otherwise will show your warning.

}  

コンソールの O/P:

2011-03-08 19:13:02.243 iPadMables[4557:207] 1 つ

2011-03-08 19:13:06.224 iPadMables[4557:207] OneTwo

2011-03-08 19:13:09.388 iPadMables[4557:207] ワンツースリー

于 2011-03-08T13:46:12.290 に答える