Ola pessoal, talvez alguem até ja tenha feito essa pergunta. Mas la vai.
A classe HashMap serve para que mesmo? Nao consegui entender, qual é a verdadeira utilizadade dela.
desde ja agradeço.
Ola pessoal, talvez alguem até ja tenha feito essa pergunta. Mas la vai.
A classe HashMap serve para que mesmo? Nao consegui entender, qual é a verdadeira utilizadade dela.
desde ja agradeço.
Um mapa serve para resolver o conhecido problema de encontrar um valor através de uma chave.
Suponha que, em um arquivo que será lido pela sua aplicação, você tem armazenado os dados necessários para acessar um banco de dados.
Assim:
Host=seuHost
login=seuLogin
senha=suaSenha
Após ler esse arquivo, sua aplicação poderia armazenar esses dados em um mapa. Esse mapa teria, por exemplo, host como chave, e para esta chave, o valor seuHost. E assim sucessivamente.
Aliás, a classe Properties utiliza um mapa em sua implementação.
Outro exemplo:
Imagine que você tem uma matriz com duas dimensões gigantesca. Tão grande que você não pode armazenar todas as suas posições na memória do computador.
Porém essa matriz possui somente algumas posições preenchidas com valores significantes, e o resto é tudo zero. Logo, o que você quer é somente armazenar esses valores significantes. Essa matriz é conhecida como matriz esparsa.
Você pode usar um mapa para resolver esse problema.
Você usaria um objeto Point como chave, para armazenar as coordenadas da matriz, e como valor para cada chave você utilizaria o próprio valor para aquela coordenada.
HashMap é uma implementação de mapa que não se importa com a ordem em que os elementos são inseridos e não os ordena.
LinkedHashMap é similar a HashMap, porém ele mantém a ordem em que os elementos são inseridos.
TreeMap é um mapa que ordena os elementos de acordo coma ordem natural das chaves.