Utilización de Map y SortedMap

Las Clases del JDK que implementan la interfase Map son: HashMap, IdentityHashMap y WeakHashMap, mientras que la clase TreeMap implementa la sub-interfase SortedMap.

Código Fuente Agenda.java

 
import java.util.*;

public class Agenda
{

 public static void main(String args[])
 {

  // Definir un HashMap
  HashMap global = new HashMap();

  // Insertar valores "key"-"value" al HashMap
  global.put("Doctor", "(+52)-4000-5000");
  global.put("Casa", "(888)-4500-3400");
  global.put("Hermano", "(575)-2042-3233");
  global.put("Hermana", "(421)-1010-0020");
  global.put("Suegros", "(334)-6105-4334");
  global.put("Oficina", "(304)-5205-8454");
  global.put("Ana C.", "(756)-1205-3454");
  global.put("Luis G.", "(55)-9555-3270");
  global.put("Oficina 2", "(874)-2400-8600");

  // Definir Iterator para extraer/imprimir valores 

  for( Iterator it = global.keySet().iterator(); it.hasNext();) { 
    String s = (String)it.next();
    String s1 = (String)global.get(s);
    System.out.println(s + " : " + s1);
  }
 
  // Definir un arreglo con valores determinados
  String args1[] = {
      "Casa", "Ana C.", "Luis G."
  };

  // Eliminar los valores del HashMap contenidos en el Arreglo anterior 
  for(int i = 0; i < args1.length; i++) { 
      global.remove(args1[i]);
  }
	

  System.out.println("---- Agenda Modificada ----");

  // Definir Iterator para extraer/imprimir valores 

  for( Iterator it2 = global.keySet().iterator(); it2.hasNext();) { 
    String s = (String)it2.next();
    String s1 = (String)global.get(s);
    System.out.println(s + " : " + s1);
  }

 }
}

Codigo Fuente Agenda2.java

 
import java.util.*;

public class Agenda2
{

    public static void main(String args[])
    {

	// Definir un TreeMap
        TreeMap global = new TreeMap();

	// Insertar valores "key"-"value" al HashMap
        global.put("Doctor", "(+52)-4000-5000");
        global.put("Casa", "(888)-4500-3400");
        global.put("Hermano", "(575)-2042-3233");
        global.put("Hermana", "(421)-1010-0020");
        global.put("Suegros", "(334)-6105-4334");
        global.put("Oficina", "(304)-5205-8454");
        global.put("Ana C.", "(756)-1205-3454");
        global.put("Luis G.", "(55)-9555-3270");
        global.put("Oficina 2", "(874)-2400-8600");

	// Definir Iterator para extraer/imprimir valores 


	for( Iterator it = global.keySet().iterator(); it.hasNext();) { 

	    // Nótese que el orden del TreeMap refleja un orden descendente 
	    // en sus elementos independientemente del orden de inserción.
	    // Debido al uso de String's esto refleja un orden alfabético
            String s = (String)it.next();
            String s1 = (String)global.get(s);
	    System.out.println(s + " : " + s1);
	}


	// Definir dos TreeMap's nuevos en base de determinadas restricciones
        SortedMap am = global.subMap("A", "M");
        SortedMap nz = global.tailMap("N");

        System.out.println("---- Agenda A-M ----");
	// Definir Iterator para extraer/imprimir valores 

	for( Iterator it2 = am.keySet().iterator(); it2.hasNext();) { 
            String s = (String)it2.next();
            String s1 = (String)am.get(s);
	    System.out.println(s + " : " + s1);
	}


        System.out.println("---- Agenda N-Z  ----");

	for( Iterator it3 = nz.keySet().iterator(); it3.hasNext();) { 
            String s = (String)it3.next();
            String s1 = (String)nz.get(s);
	    System.out.println(s + " : " + s1);
	}

    }
}

Esta Clase es muy similar a la anterior (Agenda.java) , solo que en este caso se emplea un TreeMap para agrupar los elementos, a continuación se describen las diferencias entre emplear este "Collection" y el inicial (HashMap).

Menú Curso

Objetos, Java y JDK

Composición, Clases y Librerías("Packages").

Variables, Constructores, Métodos y Comentarios.

Herencias ("Inheritance"), Condicionales y Ciclos

Operadores, Errores y Datos de Entrada/"Streams".

Interfases, Arreglos y Polimorfismo.

Collections Framework, "Threads", Garbage Collection y "Assertions".

Java 5 / JDK 5 .

Instalación Software.

Codigo.