No desenvolvimento de uma aplicação JAVA, o desenvolvedor im...
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