No desenvolvimento de uma aplicação JAVA, o desenvolvedor im...

Próximas questões
Com base no mesmo assunto
Q827395 Programação
No desenvolvimento de uma aplicação JAVA, o desenvolvedor implementou uma coleção de objetos simples, ou seja, com acessos definidos aos elementos, porém que não tem mecanismos de retirada de objetos duplicados. Esta coleção é denominada
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: B - ArrayList.

Para entender o porquê da alternativa B ser a correta, precisamos discutir brevemente sobre as coleções em Java. Em Java, Collections são estruturas de dados que agrupam objetos. Cada tipo de coleção tem suas próprias características e é importante saber como elas funcionam para escolher a melhor coleção para cada caso.

A especificidade mencionada na questão é que a coleção deve permitir acessos definidos aos elementos, mas não se preocupa com a existência de objetos duplicados. Isso nos leva a pensar em uma coleção que mantém a ordem de inserção e permite duplicatas.

O ArrayList, que é a resposta correta, é uma implementação da interface List que utiliza um array dinâmico para armazenar os elementos. Ele mantém a ordem de inserção e permite elementos duplicados. Além disso, ele oferece acesso rápido e eficiente aos elementos por meio de um índice. Por isso, ele é ideal para situações em que você precisa de acesso definido aos elementos, mas não está preocupado com a presença de duplicatas.

As outras opções não são corretas por vários motivos. O Vector é similar ao ArrayList, porém é uma classe mais antiga e é sincronizada, o que geralmente não é necessário e pode diminuir a performance. O LinkedList é uma lista duplamente encadeada, que oferece melhor performance para adicionar e remover elementos, mas não é tão eficiente quanto o ArrayList para acessos aleatórios. Por fim, Hash não é uma coleção específica em Java, mas um termo genérico que pode referir-se a estruturas baseadas em tabelas de espalhamento, como HashSet ou HashMap, que têm como característica principal a não aceitação de elementos duplicados e não garantem a ordem dos elementos.

Portanto, o ArrayList é a escolha correta porque cumpre com os requisitos descritos na questão: manter a ordem dos elementos e permitir duplicatas, sem se preocupar com mecanismos para retirada de objetos duplicados.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Não entendi. O único que não aceita elementos duplicados é o Set. Por que o ArrayList?

Ele fala em "coleção de objetos simples".

 

As outras coleções são complexas, atendem a caracteristicas adicionais, recursos adicionais que não estão presentes no ArrayList.

 

ArrayList é o arranjo mais simples dentre os listados.

Questão mal formulada.

Alguém sabe apontar a referência que trata ArrayList como simples e LinkedList como complexa? 

engraçado que arraylist e vector são a mesma coisa

 

 

o que muda é que o vector é syncronized

b-

In computer science, a dynamic array, growable array, resizable array, dynamic table, mutable array, or array list is a random access, variable-size list data structure that allows elements to be added or removed. Dynamic arrays overcome a limit of static arrays, which have a fixed capacity that needs to be specified at allocation.

https://en.wikipedia.org/wiki/Dynamic_array

Clique para visualizar este comentário

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