1
resposta

[Dúvida] Instanciamento da variável json

List<DadosTemporada> temporadas = new ArrayList<>();
for(int i = 1; i <= dadosSerie.totalTemporadas(); i++) {
    json = consumoApi.obterDados("https://www.omdbapi.com/?t="+ serie + "&season=" + i + "&apikey=6585022c");
    DadosTemporada dadosTemporada = conversor.obterDados(json, DadosTemporada.class);
    temporadas.add(dadosTemporada);
}

temporadas.forEach(System.out::println);

Esse trecho de código não deveria ser considerado dúbio? Eu não consigo identificar o instanciamento da variável json, o que ao meu ver, causaria um erro de compilaç

1 resposta

Olá, Vitor.

Tudo bem?

Pelo que você descreveu, parece que a variável json não foi declarada antes de ser usada no loop. Isso realmente pode causar um erro de compilação, já que o Java precisa que as variáveis sejam declaradas antes de serem utilizadas.

Para corrigir isso, você deve declarar a variável json antes do loop, ou dentro dele, mas antes de ser usada. Aqui está um exemplo de como você poderia ajustar o código:

List<DadosTemporada> temporadas = new ArrayList<>();
for(int i = 1; i <= dadosSerie.totalTemporadas(); i++) {
    String json = consumoApi.obterDados("https://www.omdbapi.com/?t="+ serie + "&season=" + i + "&apikey=6585022c");
    DadosTemporada dadosTemporada = conversor.obterDados(json, DadosTemporada.class);
    temporadas.add(dadosTemporada);
}

temporadas.forEach(System.out::println);

Neste exemplo, a variável json é declarada como uma String dentro do loop. Isso garante que ela seja reconhecida pelo compilador quando você tentar usá-la para obter os dados da temporada com o método obterDados.

Espero ter entendido e conseguido ajudar. Qualquer dúvida manda aqui. Bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software