2011-12-29 13 views
0

私はオブジェクトを含む配列をいくつか持っています。
どのように私は同じオブジェクトと別のオブジェクトを別々に取ることができますか?以下はNSMutableArrayからオブジェクトを取り出す

私はこれらの項目が含まれます4つの配列がしたい配列

NSMutableArray *items = [[NSMutableArray alloc] 
initWithArray:[NSArray arrayWithObjects:@"rat", @"rat", @"cat",@"Lion", @"cat", @"dog", @"dog", nil]]; 

です:2匹のラット

  • 2匹の猫
  • 第三と第二の配列と

    • 最初の配列を1匹のライオンを持つ配列
    • 2匹の犬を持つ第4の配列

    オブジェクトを取り出す最良の方法はありますか?同一のオブジェクトは同じ配列に配置する必要があります。 - 各オブジェクトとそれが追加された回数のカウントを格納する

    がNSCountedSetに配列を入れて:

  • 答えて

    6

    は、ここで一般的な答えです。

    次に、このカウントされたセット内の各オブジェクトに対して、そのオブジェクトが各オブジェクトのカウントに従って繰り返される配列を作成します。

    静的な文字列を使用しているため、同じ文字列の場合は同じ文字列を使用しているため、これはうまくいきます。カスタムオブジェクトを使用している場合、これにより多くの作業が必要になります。

    しかし、実際に質問しなければならないのは、なぜの繰り返し構造を作成する必要があるかです。あなたがそれでやっていることを知ることができれば、それについてどうやって行くのかについてより良い助言を与えることができます。例えば、あなたが持っているオブジェクトの型の数を毎回保持する必要があるだけなら、NSCountedSetを直接使うことができます(NSMutableSetから降りて、すでに変更可能です)。

    +0

    私は複数の行を含むデータベースを持っています。各行にはセクションタイトル列が含まれています。いくつかの行は同じセクションタイトル値を持ち、いくつかの行は異なっています。このデータをテーブルビューに読み込むには、セクションに基づいてデータが必要です。どのように私はそのデータを取得することができます良い提案。私はコアデータを使用しています。 – ashish

    +1

    この場合、NSFetchedResultsControllerを使用するほうが良いでしょう。 – Abizern

    +0

    アビゼムありがとうございます。配列内のカスタムオブジェクトにNSCountedSetを使用する必要がある場合どのようなアプローチですか? – ashish

    関連する問題