La Stream API de Java sirve para procesar colecciones de datos de forma declarativa y funcional, evitando bucles explícitos y haciendo el código más legible, conciso y fácil de paralelizar. Los Streams representan una secuencia de elementos sobre la cual se pueden aplicar operaciones como filtrar, transformar, ordenar o reducir. No almacenan datos: simplemente transportan valores desde una fuente (colección, arreglo, I/O, etc.) a través de una pipeline de operaciones. Permiten escribir código más expresivo y funcional, similar a otros lenguajes modernos. Operaciones principales Los Streams se dividen en dos tipos de operaciones: Intermedias (devuelven otro Stream): filter() → filtra elementos según una condición. map() → transforma cada elemento. sorted() → ordena los elementos. Terminales (devuelven un resultado): collect() → convierte el Stream en una colección. forEach() → recorre los elementos. red...