2

私はどちらを使うべきかという点でジレンマに陥っています。RESTful API (json を返す) を介してデータのグループを取得しますが、UI ビュー テーブルに表示する前にそれらを保存する方法がわかりません。

例えば。

{"Events":[{"Id":5,"Name":"Event 1 2013"},{"Id":6,"Name":"Event 2 2013"}]}

私はチュートリアルを読んでおり、NSMutableArrays を使用する人もいれば、NSMutableDictionary を使用する人もいます。

どうすればいいですか?

ところで:タップするとユーザーを別のページにリダイレクトするUIビューテーブルにデータを表示しています。ユーザーが戻ることにした場合は、リロードせずに前のビューを表示する必要があります(UinavigationControllerを使用)

ありがとう!

編集:

また、私がやろうとしていることについてのアイデアを提供するだけです。このチュートリアルに従って、取得したデータをセクション ヘッダーに分割しようとしています。このチュートリアルでは、NSDictionary を使用しています。

http://www.icodeblog.com/2010/12/10/implementing-uitableview-sections-from-an-nsarray-of-nsdictionary-objects/

NSArray を使用すると、パフォーマンスに影響しますか?

4

4 に答える 4

5

NSArray では、コレクション内のすべてのアイテムに整数のインデックスがあるため、アイテムには明示的な順序があります。格納されたオブジェクトを NSARRY から取得/置換/削除する場合、その格納されたオブジェクトの対応するオブジェクト インデックスを指定する必要があります。

NSDictionary - エントリと呼ばれる単語に由来します。各エントリは、キーを表す 1 つのオブジェクトと、そのキーの値である 2 つ目のオブジェクトで構成されます。ディクショナリ内では、キーは一意です。つまり、1 つのディクショナリ内の 2 つのキーが等しいことはありません (isEqual: によって決定されます)。ディクショナリからオブジェクトを取得するときは、objectForKeyのキー値を指定する必要があります。plist を解析している場合はいつでも NSDictionary NSDictionary.Happyコーディングの詳細については、アップルのドキュメントを参照してください:)

于 2013-01-24T05:52:56.930 に答える
3

NSDictionaries のルックアップ時間は、NSArray よりも高速です。これが主な利点の 1 つです。Apple のドキュメントへのリンクは次のとおりです。

于 2013-01-24T04:03:23.033 に答える
1

一般に、インデックス付きの方法でデータにアクセスする必要がある場合 (テーブル内の行に対して必要な場合など)、配列を使用する必要があります。indexOfObject:

ここで、各行に多くの情報がある場合は、カスタム オブジェクトの配列または辞書の配列が必要です。

于 2013-01-24T04:02:26.127 に答える
1

ディクショナリは常に配列よりも高速です。ディクショナリは、ハッシュ テーブルと同様に、キーをオブジェクトにマップします。連想配列です。

値を検索するには、配列を反復処理する必要があります。辞書では、キーで取得します。

コレクションをソート順または到着順にしたい場合は、Array が適切なタイプです。

2 つの同じキーを取得すると、辞書が不足します。

また、行をインデックスに直接関連付けることができるため、tableView に配列を使用するのは良いことです。

于 2013-01-24T05:23:32.420 に答える