辞書を作成し、配列を動的に追加し、カウント/値をインクリメントするための適切な構文について助けが必要です。
配列はオブジェクトであり、他のオブジェクトをディクショナリに追加するのと同じ方法でディクショナリに追加します。
[someDictionary setObject:theArray forKey:theKey];
「カウント/値をインクリメントする」という意味がよくわかりません。ディクショナリは、含まれているキーと値のペアの数を認識しています。何もインクリメントする必要はありません。配列についても同様です。
したがって、コードは次のようになります。
NSMutableDictionary *dict;
for (NSString *word in wordlist) {
@autorelease {
NSMutableArray *wordStrings = [NSMutableArray array];
while (/*some condition based on word*/) {
NSString *newString = [NSString stringWithFormat:...];
[wordStrings addObject:newString];
}
[dict setObject:wordStrings forKey:word];
}
}
まったく正しくないことは確かです。実際に何をしようとしているのかはわかりませんが、上記のコードは、いくつかの配列を生成して辞書に追加する方法を示しています。後は君しだい。
あなたの編集を見ると、辞書に何が保存されているかについて少し混乱していると思います。ディクショナリは、キーと値のペアのセットです。この場合、値は追加する配列であり、キーはパターン文字列です。カウントを格納する各キーに追加の「値」を入れるスペースはありません。patternや *pattern_count* などのキーの規則を使用して、パターンごとに2 つのエントリを持つことができます。ただし、その必要はありません...各パターンに格納されている配列から、含まれているオブジェクトの数を簡単に知ることができます。
NSArray *wordList = [dictionary objectForKey:pattern];
int count = [wordlist count];