2015-11-24 2 views
1

Я работаю над системой, где я ищу объект с любой из двух различных индексных систем. Поэтому мне интересно, какую структуру данных использовать для этого?Datastructure с двумя индексами

Фактический случай: я сканирую либо RFID-метку, либо QR-код, и она принадлежит определенному списку) файлов. Таким образом, каждый список файлов имеет как RFID, так и QR-код, и я могу использовать любой из них, чтобы посмотреть его. Как я могу лучше всего построить это как объект?

Пример данных:

RFID | QR | Files 
-----+----+---------- 
001 | abc| file1_french.txt, file1_english.txt 
002 | def| file2_french.txt, file2_english.txt 
003 | ghi| file3_french.txt, file3_english.txt 

Должен ли я просто иметь два HashMaps с различными индексами? Я немного смущен, я даже не знаю, как искать ответ на эту проблему.

+0

Один вопрос, так как я не уверен, правильно ли я понял. RFID/QR может иметь список файлов (где список 1..n), и каждый файл имеет только 1 RFID/QR? – Drago

+0

Я сделал редактирование, чтобы уточнить – Niels

ответ

2

Поддержание массива объектов. Создание двух HashMaps где:

HashMap<RFID, index>; 
Hashmap<QRCODE,index> 

где индекс индекс объекта в массиве, так что вам не нужно держать две ссылки на объекты, вместо этого вы можете использовать значение индекса, и использовать его для доступа из массив.

+0

А это действительно имеет смысл. – Niels

+0

Увидев, что у вас есть несколько файлов для индекса, вы можете сохранить его в списке, например: 'HashMap >' –

+0

Список файлов не проблема, это может быть просто объект, содержащий файлы. Это было больше о децибелах. – Niels

1

У вас уже есть решение: D First HashMap с RFID в качестве ключа, а второй с QR-кодом в качестве ключа. Затем вы ссылаетесь на объекты, как вам кажется. Тогда у вас будет два HashMap с одинаковым размером.

+0

Спасибо. Просто было немного странно иметь два отдельных списка. Например, если я ошибаюсь, и один файл не существует в одном из двух списков, это может вызвать странные проблемы. Таким образом, было бы здорово найти одну структуру. – Niels

Смежные вопросы