Duplo perguntas rosto fileira conjunto de mapas

A Saiba coleção Mapa? coleção mapa do que estão a atingir
  1.HashMap HashTable LinkedHashMap TreeMap ConcurrentHashMap
 
 diferença entre os dois .HashMap e HashTable

 

 HashMap não é thread-safe

            HashMap é uma subclasse do mapa de interface, a chave é mapeado para um valor-alvo, em que as teclas e os valores são objectos, e não pode conter chaves duplicadas, mas pode conter um valor duplicado. HashMap permite chave nulo e valor nulo, e hashtable não é permitido.

  HashTable são thread-safe

Hashtable HashMap é uma implementação leve (não-thread-safe implementação), de terem concluído a interface do Mapa, a principal diferença é que HashMap permite nulo chave (key) (null), devido à não-thread-safe, Hashtable pode ser maior do que na eficiência.

  . 1 .HashMap: + leque lista vinculada isoladamente com base na parte inferior (árvore de vermelho-preto), um cofre non-thread, capacidade padrão é 16, eo valor da chave para permitir vazio
   array: Nó <K, V> [ ] mesa, cada elemento é Node uma
   lista vinculada isoladamente: nó <K, V> próxima , quando a colisão de hash ocorrer, será acrescentada à lista, a lista quando o comprimento for superior a 8, em seguida, convertido em uma árvore rubro-negro
  2. HashTable: com base na tabela hash subjacente, o fio de segurança é a capacidade padrão é 11, e não permite valores vazios-chave de
 
 três .hashCode () e equals () métodos de usar a cena

hashCode () método para a obtenção de um número inteiro único dado objecto. Quando o objecto a ser armazenado em tal estrutura de dados uma de uma tabela hash, o número inteiro para determinar a posição da banheira. Por padrão, o objeto hashCode () retorna o endereço de memória do objeto onde a representação inteira.

equals () método é usado simplesmente para verificar a igualdade de dois objetos. A implementação padrão simplesmente dois objetos referências de objeto de inspeção, para verificar a sua igualdade.

  hashCode (): Classe de objecto Método entre o pai de nível superior, tipo de retorno é um int, gerar uma matriz de acordo com uma determinada regra (campo de endereço de memória, um comprimento, etc.), os dados são armazenados valor de hash
  igual (): Topo classe método objecto com base numa regra de comparação predeterminado, determina se o objecto é uniforme, a lógica subjacente geral:
   endereço de memória 1 como um objecto para a determinação
   2. Analisando e não-vazia tipo de classe julgamento
   3. fortes transfectadas
   4. objectos um campo combinado como deve escolher quatro .HashMap e TreeMap
 
 

  HashMap: utilizando a estrutura da matriz lista subjacente + (árvore vermelho-negro), pode conseguir armazenagem rápida e recuperação, mas os dados são não ordenada, adaptado para ser inserido ou eliminado no elemento adquirida entre Mapa
  
  TreeMap: estrutura de armazenamento é uma árvore binária equilibrada, incorporada forma como a árvore de vermelho-preto, padrões ordem natural, o agrupamento pode ser personalizado, mas precisa implementar interface de Comparador
     pode ser fácil de implementar vários elementos dentro da classificação, mas a diferença no desempenho do que HashMap para agrupamento e personalizado ordenados de acordo com o natural
 

TreeMap é retirado do par de chaves de classificação. Inserir, excluir a necessidade de manter o equilíbrio iria sacrificar alguma eficiência. Mas para realizar ordem natural ou passagem de ordem personalizada, em seguida, TreeMap será melhor.
HashMap pelo seu hashcode encontrar rapidamente conteúdo e treemap todos os elementos têm mantido uma certa ordem fixa, se você precisa para obter uma ordenou resultar você deve usar TreeMap. HashMap TreeMap que a eficiência habitual é maior, uma tabela hash é uma árvore binária, é recomendado o uso de HashMap, no mapa quando você precisa resolver isso por TreeMap. HashMap consulta mais rápido do que TreeMap


 Cinco relação .Set e Mapa de
  Set núcleo é armazenado não elementos duplicados, armazenar um único conjunto de objetos
  definidos entre cada aplicação corresponde Mapa
  HashMap, HashSet TreeMap TreeSet correspondente correspondente VI. Mapa Common agrupamento   de acordo com a Regra acrescentou uso LinkedHashMap, de acordo com as regras personalizadas ordenação natural ou de ordenação pode ser usado TreeMap VII. como garantir Mapa thread-safe   ambiente multi-threaded, não pode ser usado sob um pacote concorrente ConcurrentHashMap ou usar Collections.synchronizedList (new HashMap <K, V);  ConcurrentHashMap segurança do segmento de garantia, eficiência do que HashTable, extracção bloqueio segmentos
 
 

 
 

  

  
 

Acho que você gosta

Origin www.cnblogs.com/mayuan01/p/12506013.html
Recomendado
Clasificación