07 / 11 Curso de Java do zero | fundamentos e linguagem · 50 min de vídeo · atualizado em 13 out 2026

Java intermediário: estruturas de dados, Stream API, generics, packages e records

Resumo curto de coleções, records e Stream API para acompanhar a aula de Java intermediário.

Fernanda Kipper
Fernanda Kipper
Próxima aula →

Apoio escrito: escolher e transformar coleções

Este apoio reexplica os conceitos centrais com um catálogo pequeno. List mantém uma sequência e aceita repetições; Set representa valores únicos; Map associa chaves a valores. Generics registram o tipo esperado e permitem que o compilador encontre misturas indevidas.

Um record declara dados com componentes nomeados. A Stream API encadeia operações sobre uma fonte: filter seleciona, map transforma e toList reúne o resultado.

import java.util.List;

public class Catalogo {
    record Produto(String codigo, int estoque) {}

    public static void main(String[] args) {
        List<Produto> produtos = List.of(
                new Produto("B2", 3),
                new Produto("A1", 0),
                new Produto("C3", 5));

        List<String> disponiveis = produtos.stream()
                .filter(produto -> produto.estoque() > 0)
                .map(Produto::codigo)
                .sorted()
                .toList();

        System.out.println(disponiveis); // [B2, C3]
    }
}

A lista original continua com três produtos; a pipeline cria outra lista com os códigos dos que têm estoque. Para apenas verificar se um código existe, Set pode expressar melhor a regra; para localizar produto pelo código, use um Map.

Material complementar da Fernanda

  • Guia de Java intermediário — Acompanhe packages, coleções, generics, records e streams. Um record não torna os objetos referenciados profundamente imutáveis; uma operação terminal de stream também pode retornar um número ou booleano, sem criar uma coleção.

Pratique com /aprender

Copie o comando e cole no chat para iniciar uma prática guiada:

/aprender Pratique List, Set, Map, generics, records e Stream API em Java 21 com um catálogo pequeno. Dê uma necessidade concreta e peça que eu escolha a estrutura ou preveja a saída de uma transformação. Uma pergunta por vez; não revele a solução antes da tentativa.
A SEGUIR · AULA 08

Seu teste ficaria vermelho se a regra estivesse errada?

Aula escrita · Uma suíte pode executar o código inteiro e ainda deixar passar um defeito óbvio. Isso acontece quando o teste só chama métodos, mas não verifica um resultado relevante. Vamos construir testes que explicam uma regra e conseguem detectar sua violação.

Ir para a aula 08 →