1
resposta

Sobreescrevendo toString - lista de filmes

obrescrevendo o método toString() na classe Filme, e alterando a classe Principal para criar uma lista de filmes.

public class Filme {

public String toString () {
 return "Filme:" +this.getNome() + "(" + this.getAnoDeLancamento() + ")";

}

}

Main

ArrayList<Filme> listaDeFilme = new ArrayList<>();
        listaDeFilme.add(meuFilme1);
        listaDeFilme.add(meufilme2);
        listaDeFilme.add(meufilme3);
        System.out.println(listaDeFilme);  //será a presentando com string, portanto seguira a configuração toString
        
1 resposta

Bom dia Raquel!

Obrigado por compartilhar seu código com a comunidade Alura.

Gostei de como você utilizou a sobrescrita do método toString() na classe Filme para personalizar a exibição da lista. Isso é uma prática muito útil, principalmente quando queremos tornar as informações das nossas classes mais legíveis no console.

Uma dica, para retornar a mensagem de retorno você pode usar a técnica de String formatting com o método String.format(). Esse método permite criar um retorno mais organizado e fácil de ler ao invés de usarmos o símbolo de + para a concatenação. Exemplo:

 @Override
    public String toString() {
        return String.format("Filme: %s (%d)", this.getNome(), this.getAnoDeLancamento());
    }

Nesse exemplo, %s representa uma string (getNome()), enquanto %d representa um número inteiro (getAnoDeLancamento()). O método String.format() facilita o controle do layout do texto, deixando o código mais claro e conciso.

Conte com o apoio do Fórum na sua jornada.

Abraços e bons estudos!