IMOの場合、実行しようとしていることを行う最も適切な方法は、NSMutableDictionary
を使用して、キーに基づいて個々の要素にアクセスできるようにすることです。
例:
loadedBuffers = [[NSMutableDictionary alloc] initWithCapacity:CD_BUFFERS_START];
[loadedBuffers setObject:bufferId forKey:filePath];
...
[loadedBuffers objectForKey:filePath]
あなたは何も厳密に辞書を使用して必要はありませんが、それはそんなに簡単にあなたの人生を行います。あなたのケースでは
(私はそれを正しく理解していれば)、私はどうなる:
NSMutableArray* result = [NSArray arrayWithCapacity:kNUM_OF_ROWS];
NSString *name, *age, *sex....;
<for each set of strings from the web service>
<retrieve strings>
NSMutableDictionary dict = [NSMutableDictionary dictionaryWithCapacity:kNUM_OF_FIELDS];
[dict setObject:name forKey:@"name"];
...
[dict setObject:address forKey:@"address"];
[result addObject:dict];
<end_for>
return result;
このようにすることによって、あなたは順番に、文字列の各セットにアクセスすることができます。各文字列に個別にアクセスします。
要するに、文字列のセットを別の文字列に連結してエンコードするのではなく、辞書を使って文字列を展開すると、検索が容易になります。
文字列を1つの「NSString」に連結していますか?あるいは、あなたは 'NSMutableArray'に6つの要素として文字列を挿入していると言っていますか?あなたの質問から伝えるのは難しいです。 – yuji
私の配列の各要素は、これらすべての値を別々のエンティティとして含める必要があります。私の配列は多くの要素を持つことができます。 –