Как я могу получить доступ к элементу в хэш-карте на основе номера элемента? - PullRequest
0 голосов
/ 12 июня 2011

У меня есть хэш-карта с 5 элементами.Я хотел бы отобразить сопоставленное значение и значение ключа элемента на основе пользовательского ввода (идентификатор элемента).Например, если пользователь вводит 2, я хотел бы отобразить значение карты и ключ для элемента на # 2 в хэш-карте.

Как мне это сделать?

Спасибо, Правин

Ответы [ 2 ]

0 голосов
/ 12 июня 2011

Карты в целом являются неупорядоченными контейнерами. Однако, если вы используете Java, вы можете воспользоваться классом LinkedHashMap, который обеспечивает согласованное упорядочение его элементов.

Этот класс все еще дает вам только последовательный доступ, а не произвольный доступ, поэтому поиск n-го элемента будет O (n). Если вы действительно хотите иметь произвольный доступ, вам следует рассмотреть возможность использования List вместо Map.

0 голосов
/ 12 июня 2011

Это вопрос без ответа;независимо от языка или платформы (о которых вы не упомянули), хеш-карта по определению является неупорядоченным контейнеромТам есть нет элемента # 2.Элементы в хэш-карте не хранятся в каком-либо определенном порядке.

...