Colección en Java

A, ajuste en el valor java (Colección), Key - Valor (Mapa)

Los valores almacenados se divide en lista y conjunto.
lista está ordenada, repetible
conjunto no están ordenados, no se puede repetir. Los iguales de determinación y código hash, un objeto que se va a almacenar en el conjunto, y debe invalidar método equals código hash

B, lista de clases de implementación: ArrayList, Vector, ListaEnlazada (bidireccional lista enlazada circular)

1. La estructura de datos subyacente

ArrayList, Vector subyacenteSe basan en una gama de alta eficiencia de la consulta, las supresiones de baja eficiencia (Vector es thread-safe, la eficiencia global es menor que la ArrayList)
inferior ListaEnlazadamanera dependiente circular lista enlazada, adiciones y supresiones de alta eficiencia, baja eficiencia de la consulta

2. Los términos de elementos de almacenamiento

elementos ArrayList, Vector, ListaEnlazada en un ordenado, repetible permiten valores nulos,

3. expansión de la capacidad

Una expansión de 1,5 veces ArrayList
Vector Los incrementos graduales de expansión 0, el doble de la expansión de la capacidad; + delta capacidad de otro modo original de
LinkedList no expansión

4. Seguridad de los hilos

ArrayList, hilo LinkedList seguro(Si hay varias hebras necesitan acceder a la lista de elementos de la colección, considere el uso de una colección de colecciones Colecciones envasados ​​en hilo de seguridad)
Vector thread-safe

C, conjunto de clases de interfaz: HashSet, LinkedHashSet, TreeSet

HashSet

  1. No se puede tener los mismos elementos,Es posible que tenga una serie de elementos nulos, Elementos depositados se desordenada
  2. La estructura de datos subyacente es una tabla hash, la tabla hash se almacena en una serie de tablas, el valor hash se genera por el hashCode objeto ()
  3. La única manera de asegurarse de que dos de: hashCode () y equals () método
  4. Non-thread-safe

LinkedHashSet

  1. No se puede tener los mismos elementos,Puede tener un valor nulo, El elemento cargado en estricta conformidad con el orden
  2. estructura de datos subyacente compuesta por una tabla hash y la cadena
  3. Es decir, una lista ordenada para asegurar los elementos de extracción y almacenamiento consistentes con los elementos de la tabla hash para garantizar la unicidad
  4. Non-thread-safe

TreeSet

  1. No se puede tener los mismos elementos,No tener un valor nulo, Ordenados según el orden natural de los elementos
  2. El árbol rojo-negro está estructuras de datos subyacente (un árbol binario de búsqueda auto-equilibrio)
  3. Non-thread-safe

D, clase de implementación del Mapa: HashMap, HashTable, TreeMap, LinkedHashMap

HashMap

  • Hilo de seguridad, de alta eficiencia. valores null y teclas que permiten

  • interfaz de mapa se basa en una tabla hash. El papel de la tabla hash se utiliza para garantizar la unicidad de la clave.

  • Ejemplos de métodos comunes:

     new HashMap<Object,Object>();
    

Tabla de picadillo

  • Hilo de seguridad, la baja eficiencia. No permite llaves nulos y valores nulos

ashanap Laidaked ः

  • Se basa en la tabla hash para lograr una ordenada y una lista de enlaces a la interfaz del mapa

  • Por una tabla hash para garantizar la singularidad clave

  • (Lo mismo orden de almacenamiento y retirada) de la lista ordenados garantizada bono vinculado

  • Ejemplos de métodos comunes:

    new LinkedHashMap<Object,Object>();
    

TreeMap

  • interfaz del mapa es lograr basada árbol rojo-negro

  • constructor

    TreeMap();  //使用键的自然顺序构造一个新的、空的数映射
    //构造一个新的、空的树映射,该映射根据给定比较器进行排序
    TreeMap(Comparator<?super K>comparator)
    

La diferencia entre HashMap y HashTable, HashTable con el ConcurrentHashMap

  1. El HashMap es nulo o un valor clave, que no es posible HashTable
  2. HashMap no es seguro para subprocesos, de alta eficiencia. Y HashTable son seguros para subprocesos, la baja eficiencia
  3. ConcurrentHashMap también seguro para subprocesos, que es un gran mapa, mapa y se divide en varios pequeños, más bloqueo, respectivamente, y por lo tanto más eficiente que HashTable.

Supongo que te gusta

Origin www.cnblogs.com/siheng/p/12549694.html
Recomendado
Clasificación