DAM → Programación → RA6
RA6 · verificado

RA6 de Programación · DAM

Escribe programas que manipulen información seleccionando y utilizando tipos avanzados de datos.

Comprobar mi dominio con José →

Contenido verificado asociado a este RA

Arrays en Java: declaración, recorrido y manipulación de datos

Esta unidad trabaja la escritura de programas que utilizan arrays: cómo declararlos e inicializarlos, cómo recorrerlos y modificarlos, cómo emplear arrays multidimensionales y de objetos, y cómo aplicar algoritmos básicos de búsqueda y cálculo sobre ellos. Se incluyen ejemplos ejecutables, un caso profesional y los errores más frecuentes al indexar arrays.

Iteradores y Recorrido de Colecciones Avanzado

Esta unidad profundiza en el recorrido de colecciones mediante iteradores, una herramienta fundamental para acceder a los elementos de forma segura y eficiente, independientemente de la implementación subyacente de la colección. Se comparan diferentes estrategias de recorrido y sus implicaciones.

Programación Genérica: Clases y Métodos

Esta unidad introduce la programación genérica, una técnica fundamental para escribir código flexible y reutilizable que opera con diferentes tipos de datos sin sacrificar la seguridad de tipos. Se explica cómo crear y utilizar clases y métodos genéricos.

Expresiones Regulares para Búsqueda de Patrones

Esta unidad aborda el uso de expresiones regulares, una herramienta poderosa para la búsqueda, validación y manipulación de patrones en cadenas de texto. Se explican los fundamentos de su sintaxis y su aplicación práctica en programas.

Manipulación de Documentos XML

Esta unidad cubre la identificación de las clases y técnicas para el tratamiento de documentos XML, un formato estándar para el intercambio de datos. Se explican los métodos para leer, escribir y modificar la estructura y el contenido de archivos XML en programas.

Conceptos clave

ArrayÍndiceMemoria contiguaArray multidimensionalPaso de arrays por referenciaArray de objetosArrayIndexOutOfBoundsExceptionIteradorIteratorFor-eachSetMapHashSetHashMapConcurrentModificationExceptionProgramación genéricaClases genéricasMétodos genéricos

Errores que conviene evitar

  • Acceso fuera de rango en un array: Causa: usar un índice igual a array.length o negativo. Corrección: recorrer siempre con i < array.length y validar índices calculados antes de usarlos, ya que provoca ArrayIndexOutOfBoundsException.
  • Array de objetos sin inicializar cada posición: Causa: asumir que new Alumno[3] crea objetos Alumno reales. Corrección: cada posición queda a null hasta que se asigna explícitamente un objeto; acceder antes lanza NullPointerException.
  • Modificar un array dentro de un for-each: Causa: la variable del bucle es una copia del valor, no una referencia a la posición. Corrección: usar un bucle indexado (for con i) y asignar sobre array[i] cuando se necesite modificar elementos.
  • Modificar colección durante iteración con for-each: Causa: El bucle for-each no está diseñado para modificaciones concurrentes. Corrección: Usar `Iterator.remove()` o modificar la colección fuera del bucle.
  • Selección incorrecta de colección: Causa: Desconocimiento de las características de rendimiento y propósito de `Set` y `Map`. Corrección: Evaluar si se necesitan elementos únicos (`Set`) o pares clave-valor (`Map`) antes de elegir una `List`.
  • Uso de tipos primitivos en genéricos: Causa: Los genéricos solo aceptan tipos de referencia. Corrección: Usar las clases envoltorio correspondientes (ej. `Integer` en lugar de `int`).
  • Asumir covarianza en tipos genéricos: Causa: Creer que `List<Subtipo>` es un `List<SuperTipo>`. Corrección: Utilizar comodines (`? extends T`, `? super T`) para expresar relaciones de subtipo en parámetros genéricos.
  • No escapar metacaracteres: Causa: Confundir un carácter literal con un metacaracter de regex. Corrección: Usar `\` para escapar caracteres como `.`, `*`, `+`, `?`, `[`, `]`, `(`, `)`, `{`, `}`, `|`, `^`, `$`, `\`.

Qué se evalúa en este RA

CE a

Se han escrito programas que utilicen arrays.

CE b

Se han reconocido las librerías de clases relacionadas con tipos de datos avanzados.

CE c

Se han utilizado listas para almacenar y procesar información.

CE d

Se han utilizado iteradores para recorrer los elementos de las listas.

CE e

Se han reconocido las características y ventajas de cada una de la colecciones de datos disponibles.

CE f

Se han creado clases y métodos genéricos.

CE g

Se han utilizado expresiones regulares en la búsqueda de patrones en cadenas de texto.

CE h

Se han identificado las clases relacionadas con el tratamiento de documentos XML.

CE i

Se han realizado programas que realicen manipulaciones sobre documentos XML.

Canal Estudios es un servicio de Skillback S.L. · NIF B2481724 · Barcelona, España
Aviso legal · Privacidad · Cookies · Términos · Atles de Catalunya