package br.com.alura.screenmatch.principal;
import br.com.alura.screenmatch.modelos.Filme; import br.com.alura.screenmatch.modelos.Serie; import br.com.alura.screenmatch.modelos.Titulo;
import java.util.ArrayList;
public class PrincipalComListas { public static void main(String[] args) { Filme meuFilme = new Filme("O poderoso chefão", 1970); meuFilme.avalia(9); Filme outroFilme = new Filme("Avatar", 2023); outroFilme.avalia(6); var filmeDoPaulo = new Filme("Dogville", 2003); filmeDoPaulo.avalia(10); Serie lost = new Serie("Lost", 2000);
Filme f1 = filmeDoPaulo;
ArrayList<Titulo> lista = new ArrayList<>();
lista.add(filmeDoPaulo);
lista.add(meuFilme);
lista.add(outroFilme);
lista.add(lost);
for (Titulo item: lista) {
System.out.println(item.getNome());
if (item instanceof Filme filme && filme.getClassificacao() > 2) {
System.out.println("Classificação " + filme.getClassificacao());
}
}
ArrayList<String> buscarPorArtista = new ArrayList<>();
buscarPorArtista.add("Adam Sandler");
buscarPorArtista.add("Paulo");
buscarPorArtista.add("Jacqueline");
System.out.printf(buscarPorArtista);
}
}
Estou com problema ao passar o objeto pelo printf, se eu colocar o .toString() compila, mas da forma do video não compila.
Erro: C:\Users\jpfra\Intellij\java-screenmatch-listas-colecoes\src\br\com\alura\screenmatch\principal\PrincipalComListas.java:39:19 java: no suitable method found for printf(java.util.ArrayList<java.lang.String>) method java.io.PrintStream.printf(java.lang.String,java.lang.Object...) is not applicable (argument mismatch; java.util.ArrayList<java.lang.String> cannot be converted to java.lang.String) method java.io.PrintStream.printf(java.util.Locale,java.lang.String,java.lang.Object...) is not applicable (argument mismatch; java.util.ArrayList<java.lang.String> cannot be converted to java.util.Locale)