Java マップとリストの違い
マップ (マッピング)
Map は、キー オブジェクトと値オブジェクトをマップするコレクションで、その各要素にはキー オブジェクトと値オブジェクトが含まれます。 Map には主に次の 2 つの実装クラスがあります:
HashMap: HashMap はハッシュ テーブルに基づいて実装されます。
LinkedHashMap: HashMap に似ていますが、反復処理の際、
TreeMap: TreeMap は赤黒の木に基づいて実装されます。
List (リスト)
List の要素は線形に格納され、繰り返しオブジェクトを格納できます。List には主に次の 2 つの実装クラスがあります。
ArrayList: 要素へのランダム アクセスを可能にする可変長の配列 ArrayList への要素の挿入と削除は時間がかかります。 JDK8 での ArrayList 拡張の実装では、grow() メソッドでステートメント newCapacity = oldCapacity (oldCapacity >> 1) (つまり、1.5 倍の拡張) を使用して容量を計算し、次に Arrays.copyof() メソッドを呼び出します。元の配列をコピーします。 LinkedList: リンク リスト データ構造を使用すると、挿入と削除は高速ですが、アクセス速度は遅くなります。リスト | マップ | |
---|---|---|
Collection | ||
AbstractList (共通のサブクラスには ArrayList、LinkedList、Vector が含まれます) | HashMap、HashTable | |
add( )、remove( )、clear( )、get( )、contains( )、size ( ) | put( )、get( )、remove( )、clear( )、containsKey( )、containsValue( )、keySet( )、values( )、size( ) | |
繰り返し可能 | #繰り返し不可 | ##シーケンス |
#スレッド セーフティ |
||
ハッシュテーブル スレッド セーフティ | #php 中国の Web サイト、多数の無料の | Java 入門チュートリアル
以上がJavaマップとリストの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。