私には素晴らしい仕事がありますが、ここで最適化されたバージョンがどれであるかわかりません。これはシングルスレッド環境です。
Thunderbirdでは、メッセージをツリーとして表示できます。木のリストになります。ルートからリーフ、そしてその逆にナビゲートできるツリー要素をクリックすると、おそらく他のメールクライアントがありますが、私は他のクライアントを使用していません。ここでのタスクも同様です。ツリービューにメッセージリストを表示します。
Message1
Message1.1
Message1.2
Message1.2.1
Message2
Message3
Message 3.1
など...私は持っていますVector<Message> myMessages
また、メッセージの簡略化されたPOJOは次のようになります。
class Message{
int id;
int parentID;
String topic;
String content;
}
私の質問は簡単です。そのツリーを格納するためにどのデータ構造を使用する必要がありますか?parentID = null(トピックの最初のメッセージ)であるメッセージIDのキーを持つLinkedHashMapであり、値はすべてのメッセージを含むArrayListである必要がありますか?-またはネストされたLinkedHashMap?
メッセージ1.2.1を保存して、彼の親が誰であるかを簡単に知る方法は?
更新:SwingではなくGWT/htmlにリストされます