https://techiworks.com/which-collection-classes-provide-random-access-of-its-elements/