1
resposta

Desafio

package Relatorio.Desafio;

import java.util.ArrayList;

public class Principal {
    public static void main(String[] args) {

        ArrayList<String> lista = new ArrayList<>();
        lista.add("Monitor");
        lista.add("Mouse");
        lista.add("Notebook");
        lista.add("Teclado");

        for (String itens : lista) {
            System.out.println(itens);
        }
    }
}

outro exercício

package Relatorio.Desafio;

public class Cachorro extends Animal {
    private String cachorro;

    public Cachorro(String cachorro) {
        this.cachorro = cachorro;
    }

    @Override
    public String toString() {
        return cachorro;
    }
}
package Relatorio.Desafio;

public class Animal {
}
package Relatorio.Desafio;

public class Main {
    public static void main(String[] args) {

        Animal animal = new Cachorro("Tob");

        if (animal instanceof Cachorro cachorro) {
            System.out.println(cachorro);
        }
    }
}
1 resposta

Olá, Wanderson, como vai?

O código está correto e bem encaminhado. No primeiro exercício, a lista de strings com o loop foreach funciona exatamente como esperado, imprimindo cada item sem complicações. Uma observação pequena: o nome da variável no loop, "itens", está no plural, mas como ela representa um elemento por vez, o singular "item" ficaria mais legível.

for (String item : lista) {
    System.out.println(item);
}

Nos demais exercícios, a herança entre Cachorro e Animal está correta, o override de toString() é uma boa escolha para representar o objeto como string, e o uso do pattern matching com instanceof (na forma animal instanceof Cachorro cachorro) é moderno e idiomático.

Parabéns pela entrega, Wanderson. O fórum está à disposição para dúvidas ou desafios.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!