A execução do código a seguir, escrito em Java, retornará o ...

Próximas questões
Com base no mesmo assunto
Q3407621 Programação
Julgue o próximo item, relativo a Java, API RESTful e JSON.
A execução do código a seguir, escrito em Java, retornará o resultado True.
Imagem associada para resolução da questão
Alternativas

Comentários

Veja os comentários dos nossos alunos

Função principal:

  • boolean flag = Check("STM");
  • System.out.println(flag);

A função Check("STM") é chamada.

Dentro da função Check(String s):

  • if(s.length() == 0 || s.length() == 1) return true;

Não entra aqui, pois s.length() é 3.

  • if(s.charAt(0) == s.charAt(s.length() - 1))
  • s.charAt(0) é 'S'
  • s.charAt(2) é 'M'

Como 'S' != 'M', essa condição é falsa, então não entra na recursão.

  • return false;

Como os caracteres extremos são diferentes, a função conclui que não é um palíndromo e retorna false.

Errado! O código é um juiz de palíndromos (palavras iguais de trás pra frente, como "ovo"). Ele compara a primeira letra ('S') com a última ('M') de "STM". Como são diferentes, ele imediatamente grita "Falso!" ‍♂️ e encerra o caso.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo