-3

すべての国のリストを格納できるJava構造が必要です。どのJavaデータ構造をお勧めしますか?

4

6 に答える 6

2

重複を回避するSetようなコレクションの実装を使用できます(名前だけの場合)。HashSet国コードと名前を保持したい場合は、Mapコレクションである可能性があります。

于 2012-07-16T19:43:58.927 に答える
2

コレクションを反復処理しますか? その場合、java.util.ArrayList.

ある種のルックアップを行うためにそれを使用するつもりですか?「これは存在しますか」というシナリオのように?その場合、java.util.HashSet

国ごとに追加情報を添付する必要がありますか? もしそうなら、java.util.HashMap

ルックアップと順序付けされた反復が必要ですか? その場合、java.util.TreeSet.

懸念すべき並行性もありますが、それについての言及は見られなかったので、それらについては省略します。

于 2012-07-16T19:47:59.570 に答える
0

重複が予想されない限り、HashSet が適していると思います。HashSet は、検索を高速化する一定時間のルックアップを提供します。データ構造が複数のスレッドによってアクセスおよび変更されることが予想される場合は、Collections.SynchronizedSet や CopyOnWriteArrayList などの他のスレッドセーフなバリアントを検討できます。オプションを絞り込むには、ユースケースの詳細を提供する必要があります

于 2012-07-16T19:49:17.980 に答える
0

アプリに言語のリストがあるので、最近非常に似たようなことをしました。そのために Enum を使用するだけです。国のリストはかなり安定しているため、このクラスを頻繁に再コンパイルする必要はありません;)

于 2012-07-16T19:52:22.033 に答える
0

セット内の要素の一意性と一定時間のキー検索の両方を提供する HashSet を使用する必要があります。

于 2012-07-16T19:46:07.527 に答える
0

使ってみてくださいDictionary<k,v>、私はそれをお勧めします

于 2012-07-16T19:46:50.627 に答える