Estructuras de datos del Collections Framework

Tipos de datos y excepciones en Java

Jim White

Java Instructor

¿Qué es un framework?

  • Un framework es un conjunto de tipos reutilizables con funcionalidad genérica
    • Ejemplo de tipos: clases e interfaces
    • Mejora la calidad de la aplicación
    • Evita crear todo desde cero
  • En Java, los frameworks se entregan en uno o varios packages
  • Incluyen pautas y reglas de uso

Los frameworks ofrecen código listo con funcionalidad genérica

1 Foto de Ashkan Forouzani en Unsplash
Tipos de datos y excepciones en Java

Tipos en Java

Dos categorías de tipos en Java:

  • Tipos primitivos
    • byte, short, int, long, float, double, char, boolean
  • Tipos referencia
    • Clases
    • Interfaces
    • Enums
    • Arrays
    • ...
Tipos de datos y excepciones en Java

The Collections Framework

  • Collections Framework: conjunto integrado de tipos genéricos de estructuras de datos en Java
    • Un paquete de tipos para almacenar y manipular un grupo de objetos
  • Definido en el package java.util
    • Hay que usar import para usar los tipos del framework
Tipos de datos y excepciones en Java

¿Y los arrays?

  • Los arrays de Java pueden contener un grupo de objetos o primitivos
    • Collections Framework ofrece un conjunto alternativo de estructuras
  • Ambos tienen pros y contras
Arrays Collections
No redimensionables Tamaño dinámico (crecen y encogen)
Guardan primitivos u objetos Solo guardan objetos
Homogéneos: elementos del mismo tipo Heterogéneos: objetos distintos
Notación especial [] para acceder Usa métodos para acceder a objetos
Sintaxis especial {} para inicializar Usa new (sin sintaxis especial)
Tipos de datos y excepciones en Java

Tipos del Collections Framework

  • Collections Framework se divide en dos tipos básicos: Collection y Map
    • Representados por dos interfaces: java.util.Collection y java.util.Map
    • Ambas tienen varias clases que las implementan
  • import java.util.*; para usar cualquier tipo del Collections Framework

Collections Framework tiene dos tipos básicos: Collection y Map

Tipos de datos y excepciones en Java

Collection

  • Collection define muchos tipos de agrupaciones de objetos
    • Se definen mediante interfaces adicionales
  • Grupo ordenado de objetos: List
  • Grupo desordenado de objetos: Set
  • Grupo FIFO (primero en entrar, primero en salir): Queue
    • Funciona como la cola de un banco o taquilla
  • Métodos .add(Object) y .remove(Object) para modificar cualquier Collection

Collection incluye List, Set y Map

Tipos de datos y excepciones en Java

Map

  • Las estructuras Map funcionan como una guía telefónica o diccionario
    • Objetos «key» -> a objetos «value»
    • En una guía, un nombre -> número de teléfono
    • En un diccionario, una palabra -> su definición
  • Usa la clave para modificar un Map
    • .put(Object key, Object value) para añadir a un Map
    • .remove(Object key) para eliminar de un Map
  • Hay muchos tipos de Map, como HashMap

La estructura Map funciona como una guía telefónica o un diccionario

Tipos de datos y excepciones en Java

Genéricos

  • Collections y Maps son «parametrizados»
    • Se usan genéricos de Java para especificar los objetos en una Collection o Map
    • Sintaxis genérica: <Class> con un tipo parametrizado
      • < > se llama operador diamante
ArrayList<String> list = new ArrayList<String>();  // Construcción con genéricos
Tipos de datos y excepciones en Java

Genéricos y seguridad de tipos

  • Los genéricos mejoran la seguridad de tipos
    • Restringen los objetos permitidos en el contenido de Collection y Map
ArrayList<String> list = new ArrayList<String>();
list.add("hello");  // Añadir un String es correcto
list.add(new Integer(5));  // Intentar añadir un Integer causa error de compilación
Tipos de datos y excepciones en Java

Sin usar genéricos

ArrayList list2 = new ArrayList();  // Legal pero no específico

list2.add("hello");                 // Ahora se puede añadir cualquier tipo de objeto
list2.add(new Integer(5));
Tipos de datos y excepciones en Java

Declaración y asignación de variables

  • La declaración y la asignación de variables pueden hacerse por separado
ArrayList<String> list = new ArrayList<String>(); // Declaración y asignación en una línea

ArrayList<String> list2;    // Declaración de variable...
list2 = new ArrayList<String>();  // ...y la asignación pueden ser 2 sentencias
Tipos de datos y excepciones en Java

¡Vamos a practicar!

Tipos de datos y excepciones en Java

Preparing Video For Download...