重複の可能性:
Java コレクションの実装を選択するための経験則?
私の状況はこれです:
- 保持する必要があるオブジェクトのコレクションがあり、時々反復処理します
- コレクションのサイズは動的です
- 反復は各要素にアクセスする必要があります
- コレクションをソートする必要はありません
コレクションの作成または更新に時間の制約はありませんが、できるだけ早くコレクションを繰り返し処理したいと考えています。
使用するのに最適なコレクションは何ですか (または、配列の使用をお勧めしますか?)
重複の可能性:
Java コレクションの実装を選択するための経験則?
私の状況はこれです:
コレクションの作成または更新に時間の制約はありませんが、できるだけ早くコレクションを繰り返し処理したいと考えています。
使用するのに最適なコレクションは何ですか (または、配列の使用をお勧めしますか?)
List
おそらくコレクションを使用できますArrayList
。
順序付きコレクションかどうか、挿入順序を維持するかどうか、一意性を維持するかどうかなどのパラメータに依存します。
リスト vs セット
セット: 一意の順序付けされていないコレクション
リスト: 順序付けられたコレクション、要素の重複を許可
一般的に:特定の制約がない場合は、ArrayList
が最善の策です。非常に厳密なパフォーマンス制御を行っていない限り、空の配列を使用しないでください。エラーが発生する可能性が非常に高くなります (また、ArrayList 実装よりもパフォーマンスが優れていない可能性が高くなります)。
あなたの場合、高速反復要件の意味ArrayList
は良い選択です。