No que diz respeito a ArrayList e Vector, existem principalmente dois aspectos.
1. Sincronicidade: Vector é thread-safe, o que significa que é sincronizado, enquanto ArrayList é thread-safe e não sincronizado.
2. Crescimento de dados: quando o crescimento é necessário, Vector cresce por padrão em um nível, enquanto ArrayList cresce pela metade de seu tamanho original.
Existem três aspectos principais de HashMap e HashTable.
1. Razões históricas: Hashtable é baseado na antiga classe Dictionary e HashMap é uma implementação da interface Map introduzida em Java 1.2.
2. Sincronicidade: Hashtable é thread-safe, o que significa que é síncrono, enquanto HashMap é thread-safe e não síncrono.
3. Valor: Somente HashMap permite usar um valor nulo como chave ou valor de uma entrada de tabela
Coleção
├Lista
│├LinkedList
│├ArrayList
│└Vetor
│ └Pilha
└Definir
Mapa
├Hashtable
├HashMap
└WeakHashMap
Coleção é a interface de coleção mais básica. Uma Coleção representa um conjunto de Objetos, ou seja, os elementos da Coleção.
Mapa fornece mapeamento de chave para valor