Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Sugestão] Faça como eu fiz: ArrayList e toString

Classe Main

//codigo anterior omitido
ArrayList<Movie> MovieList = new ArrayList<>();
        MovieList.add(myMovie);
        MovieList.add(movieBee);
        System.out.println("Quantos filmes estão na lista: "+MovieList.size());
        System.out.println(MovieList);
        System.out.println("Nome do primeiro filme: "+MovieList.get(0).toString());

Classe Movie (Filme)

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

Fiz da mesma maneira que Paulo e Jaque ensinaram mas entendi que isso pode ser alterado contanto que seja útil para o projeto

1 resposta
solução!

Oi, Gabriel! Como vai?

A utilização do método toString é um passo fundamental para transformar a visualização dos seus objetos de um endereço de memória (aquele código estranho como Filme@15db9742) em informações que realmente fazem sentido para quem está lendo o console.

Sua percepção sobre a flexibilidade desse método está corretíssima. O @Override indica que você está sobrescrevendo um comportamento padrão do Java para que ele se adapte às necessidades do seu projeto.

Exibição da Lista vs. Objeto Individual:

Quando você utiliza o comando System.out.println(MovieList), o Java percorre cada item da sua lista e chama automaticamente o toString de cada um deles. Isso é o que permite ver a lista formatada de uma só vez.

Dicas para Evoluir seu Código:

  • Nomes de variáveis: Por convenção no Java, utilizamos camelCase para variáveis. Então, em vez de MovieList, o padrão mais comum seria movieList (com o "m" inicial minúsculo).
  • Uso do toString(): No seu último System.out.println, você chamou o .toString() explicitamente. No Java, isso geralmente não é necessário dentro do println, pois o método já busca essa representação automaticamente ao tentar imprimir o objeto.
  • Customização: Como você bem notou, você pode alterar o retorno do toString para incluir mais detalhes, como a média de avaliações ou a duração do filme, dependendo do que for mais "útil para o projeto" naquele momento.

Sua organização com a ArrayList está excelente e demonstra que você compreendeu bem como gerenciar coleções de objetos.

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