Como usar coleções - Parte V – Final
Nesta último artigo sobre coleções, falaremos um pouco sobre Mapas (Map).
Como usar coleções - Parte V – Final
Estamos chegando ao final de nossa série de artigos sobre Coleções do Java. Nessa última parte falaremos um pouco sobre Map.
Usando Mapas
Mapas (também chamados de arrays associativos) de objetos são mais uma das formas de organizarmos coleções de objetos, apesar de se parecerem com arrays de objetos, seus índices não precisam necessariamente ser valores inteiros positivos seqüênciais, por isso podem ser instâncias de uma classe qualquer, simplificando: Mapas são conjuntos de pares de objetos, sendo um chamado chave e o outro, valor.
Mapas permitem valores iguais, porém, não permitem chaves repetidas, é importante lembrar que chaves diferentes podem ser ou estarem associadas a valores iguais.
No Java as interfaces e classes que implementam Mapas não herdam da interface Collection, mas mesmo assim é possível de forma separada acessar e manipular chaves e valores de mapas como se estes fossem coleções.
Os métodos que podem ser aplicados a um mapa são definidos pela interface Map, esses métodos são implementados por duas classes HashMap e TreeMap.
Figura 1 – Exemplo de HashMap
A seguir um exemplo do uso de Map:
Crie o arquivo DIPs.java.
// Importando as bibliotecas necessárias
import java.io.IOException;
import java.util.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/**
*
* @author claudio
*/
public class DIPs {
public DIPs() {
//Metdp construtor
}
@SuppressWarnings("unchecked")
public static void main(String[] args) throws IOException {
//Criando uma instancia de HashMap que vai possibilitar que
//emulemos um dicionario
Map dicionario = new HashMap();
//Agora adicionamos vários pares de hosts e Ips
dicionario.put("www.sbc.org.br", "143.54.83.4");
dicionario.put("www.usp.br", "143.107.253.62");
dicionario.put("www.inpe.br", "150.163.12.2");
dicionario.put("www.unicamp.br", "150.163.12.2");
dicionario.put("www.fapesp.br", "143.108.30.103");
dicionario.put("www.sun.com", "192.18.97.241");
dicionario.put("java.sun.com", "192.18.97.71");
dicionario.put("www.ibta.com.br", "200.219.192.212");
//Declarando uma variável chamada entrada do tipo BufferedReader
//para a entrada de dados da aplicação
BufferedReader entrada;
//Iniciando loop
while (true) {
System.out.print("Entre com o nome do servidor ou tecle enter para terminar:");
//capturando o valor digitado
entrada = new BufferedReader(new InputStreamReader(System.in));
String nomeDoServidor = entrada.readLine();
// Testando as Exceções
try{
if(nomeDoServidor.length() == 0) break;
if(dicionario.containsKey(nomeDoServidor))
System.out.print("O IP do servidor" + nomeDoServidor + "é" + dicionario.get(nomeDoServidor) + ".");
else{
System.out.print("Este Dicionario não Contém o IP do servidor" + nomeDoServidor + "." );
}
}catch (Exception e){
System.out.println("Ocorreu um erro durante a leitura!");
}
} //Fechando o Loop
}
}
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo