Olá Charline, tudo bem ?
Nesses casos a gente pode pensar numa coisa chamada Complexidade Assintótica
que nada mais é do que pensar em quantas operações vamos gastar para realizar o que queremos, normalmente chegamos a uma função matemática, mas irei simplificar para você :)
Neste caso de percorrer, tanto utilizando Hashset
ou ArrayList
teremos uma performance muito parecida porque em ambos os casos teremos que percorrer a lista toda, é o chamado de O( n)
em Análise de Algortimos
, então não haverá ganhos reais em preferenciar uma ou outra estrutura, acredito que você pode trabalhar tranquilamente com um Arraylist, dado que elementos repetidos não serão um problema :)
Devemos ponderar em utilizar um Set
justamente quando estamos querendo que não haja elementos repetidos, ou, encontrar elementos rapidamente, utilizar sem fazer essas implementações normalmente vai indicar que você quer um array
e não um conjunto
:)
Então o resumo é que vá de Arraylist
se você pretende apenas adicionar e percorrer :)
Abraços e Bons Estudos!