ArrayListに、LinkedListはとベクトルの間の差

ArrayListに、LinkedListはとベクトルの間の差

ArrayList、LinkedListのとベクトルは、より一般的な知識の点とのインタビューでみなします。

1.1、ArrayListに

ArrayList继承AbstractList抽象父类,实现了List接口(可以进行list操作)、RandomAccess(可随机访问)、Cloneable(可拷贝)、Serializable(可序列化)
  • スレッドセーフ
  • 基本的な実装は、配列ArrayListのデフォルトの初期容量は10で、元の半分の容量拡大を毎回追加し、1.5倍であるということです

1.2、LinkedListの

LinkedList实现了List接口(可以进行list操作)、Deque接口(能够当做双向端队列使用)、Cloneable(可拷贝)、Serializable(可序列化)
  • スレッドセーフ
  • 二重にリンクされたリストが簡単にフロント、基礎となる実装をすることができますされて横断/リア

1.3、ベクトル

Vector 是矢量队列,它是JDK1.0版本添加的类。继承于AbstractList,实现了List, RandomAccess, Cloneable这些接口
  • 底部は、アレイ、スレッドセーフであります
  • すべてのメソッドは同期化され、パフォーマンスの低下があります
  • 初期化ベクトルの長さは、2倍になることである以前の容量拡張を倍加するたび10

    全体:多目的クエリのArrayList、追加および削除マルチLinkedListは、マルチスレッド使用のベクトル
    のArrayList遅い追加および削除は、絶対的なものではなく、あなたがArrayListをより速く、その後、中央の位置を削除した場合、尾の削除ArrayListのは、高速です。

参考リンク:

おすすめ

転載: www.cnblogs.com/shaoyu/p/12035153.html