Я ищу, чтобы построить хеш-таблицу, в которой несколько ключей String, которые используют одно и то же значение байтового массива, объединены в одно значение с несколькими ключами. Это значит, что значение не сохраняется снова и снова с разными значениями. Добавление ключа со значением также должно перезаписать любой существующий ключ с тем же именем, но сохранить значение, если оно имеет другой ключ, но удалите его, когда другого ключа нет.Более эффективная таблица хешей
EDIT: Как создать эту структуру данных? Например, если я вставляю «привет» со значением, то добавляю «Мир» с тем же значением, я хотел бы, чтобы структура была чем-то вроде строк [[Hello, World], Value] вместо [Hello, Value] , [Мир, значение]. Я попытался использовать список как свой hashkey, но обнаружил, что не могу вспомнить значение. Вот мой код:
HashMap<List<String>, byte[]> map = new HashMap<List<String>, byte[]>();
public void storeByte (String id, int value) {
byte[] byteValue = new byte[value];
ArrayList<String> idlist = new ArrayList<String>();
idlist.add(id);
map.put(idlist, byteValue);
System.out.println(map);
}
public byte[] fetchByte(String id) {
ArrayList<String> idlistsearch = new ArrayList<String>();
idlistsearch.add(id);
byte[] output = map.get(id);
if(map.containsKey(idlistsearch)){
output = map.get(id);
} else {
return null;
}
return output;
Я надеюсь, что это имеет смысл,
Спасибо.
Возможно, вам нужно будет дать ясный пример того, что вы пытаетесь сохранить и как его следует обрабатывать. Из вашего описания нелегко определить, чего вы пытаетесь достичь. – Bobulous
Каков ваш вопрос? – Radiodef