0

各記事の下にニュース記事とコメントがあるネイティブ Android ニュース アプリがあります。

特定の記事の内側の View(Activity) を開くと、同じ記事の別の記事 (CNN、BBC、FOX などの記事など) が表示される場合があります。

各記事は、実際には一意の文字列 ID/ハッシュを持つ別の記事として扱われます。

私のバックグラウンドは Perl/PHP です。Java で次のようなものを作成する方法を知りたいです。

$array["Article1_Coverage_X"] = array($Comment1,$Comment2,$Comment3);
$array["Article1_Coverage_Y"] = array($Comment1,$Comment2,$Comment3,$Comment4);
// $Comment1 , $Comment2 ....etc are comment objects

. . つまり、配列の最初の次元は文字列 (キー) で、2 番目の次元は他の型です。

次のことを試しましたが、探しているものではありません。

 ArrayList<ArrayList<Comment>>  // Where Comment is a Java object with ID,Title.....etc

両方のディメンションのキーはインデックス付きの整数であるため

より良いアプローチがあれば、私はそれを高く評価します。各ニュース記事に関連するコメントのリストを一時変数に保存して、ユーザーがアクティビティを終了すると (リサイクル/ゴミに捨てられる) ようにしたいので、SQLite db に保存したくないのです。

4

1 に答える 1

1

必要なのは、ArrayLists の HashMap です。HashMap はキーと値のペアを作成します。キーを文字列にして、整数の代わりに抽出できるようにします。

HashMap < String,ArrayList < Comment >> hmap = new HashMap < String,ArrayList < Comment >> ();

データを入力するには、

hmap.put("BBC", commentlist1);

抽出するには、

ArrayList<Comment> list = hmap.get("CNN");

要素を反復するには、いくつかの方法があります。 マップ内の各エントリを効率的に反復する方法は?

また、特定の順序を維持したい場合は、LinkedHashMap

于 2013-04-21T11:31:36.270 に答える