Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — FCC 2019

ProgramaçãoLinguagens de programação
Código
fc052803
Banca
FCC
Órgão
AFAP
Ano
2019
Cargo
Analista de Fomento - Tecnologia da Informação

Para criar array um Analista de Informática digitou os comandos abaixo no método main de uma classe Java em condições ideais.


I. int[ ] a = {1,3};

II. int b [ ] = new int[2]; b[0]=1; b[1]=3;

III. int [ ] c = new int[2]; c.add(1); c.add(2);

IV. int [ ] [ ] d = {{1,3},{4,5}};

V . int e [ ] [ ] = {{1,3},{4,5}};


Ao tentar compilar e executar a classe, foi exibida a mensagem “Exception in thread "main" java.lang.RuntimeException: Uncompilable source code”. Essa mensagem foi exibida porque o item

  1. AIV está incorreto, pois não especifica o tamanho da array.
  2. BV está incorreto, pois deve haver apenas um par de colchetes após o nome da array.
  3. CI está incorreto, pois não é permitido declarar um array e já incluir os valores nele.
  4. DII está incorreto, pois os colchetes devem ficar antes do nome da variável b.
  5. EIII está incorreto, pois não existe o método add neste contexto.
Revelar gabarito e comentário

GabaritoE — III está incorreto, pois não existe o método add neste contexto.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Arrays em Java – Sintaxe de Declaração e Inicialização

Gabarito: letra E. O único item que gera erro de compilação é o III, pois arrays nativos em Java não possuem o método add(). Esse método é próprio de coleções como ArrayList. A tentativa de chamar c.add(1) em um array int[] resulta em erro de compilação.

Análise dos itens

  • I – int[ ] a = {1,3}; ✅ Correto. Declaração e inicialização válida usando inicializador entre chaves.

  • II – int b [ ] = new int[2]; b[0]=1; b[1]=3; ✅ Correto. A posição dos colchetes pode ser antes ou depois do nome (int[] b ou int b[]), ambas são aceitas.

  • III – int [ ] c = new int[2]; c.add(1); c.add(2); ❌ Incorreto. Arrays em Java não possuem o método add(). Para atribuir valores, deve-se usar índices: c[0]=1; c[1]=2;.

  • IV – int [ ] [ ] d = {{1,3},{4,5}}; ✅ Correto. Declaração e inicialização de array bidimensional. O tamanho é inferido dos elementos.

  • V – int e [ ] [ ] = {{1,3},{4,5}}; ✅ Correto. Mesma lógica do IV, apenas com colchetes após o nome.

NÃO CAIA NESSA!

A FCC explora a confusão entre arrays e coleções. O candidato pode lembrar que ArrayList tem método add() e pensar que arrays também possuem. Na verdade, arrays são estruturas de tamanho fixo e não têm métodos de adição dinâmica.

Conclusão: Apenas o item III é incorreto, portanto a alternativa E é a resposta.

Gabarito: letra E.

Link permanente: /questoes/fc052803