É possível encontrar(e retornar) um dado objeto em alguma Collection buscando por seu hashCode?
Estou com o seguinte problema: tenho que criar uma “pseudo-tabela de banco de dados” contendo algumas palavras e seus significados, e esta tabela deve ser serializada para ser realizada uma pesquisa posteriormente.
Há algumas palavras repetidas que devem ser registradas com significados diferentes (exemplo: ‘que’ deve ter um registro com seu significado caso seja conjunção, outro caso seja advérbio, outro pronome, etc.) e para isso tenho que usar um id para funcionar como chave primária (deve funcionar como se fosse um banco mesmo).
Pensei em sobrescrever o método equals() em minha classe Word para verificar a igualdade pelo id, e o hashCode() retornaria o código por palavra, isto é, cada objeto Word teria o hashCode da String atribuida a sua variável que guarda a palavra, assim, para verificar se determinado Word corresponderia a determinada palavra(String), compara-se os códigos hash.
Inicialmente pensei em usar um HashSet, pois, não permite repetição e a busca deve ser rápida, porém, vi que não daria para buscar elemento algum posteriormente.
Não sei se meu problema tem solução, mas colocarei a classe Word também, caso ajude a me ajudar 
public final class Word {
private int id;
private String word;
private String meaning;
Construtores...
Gets e sets...
/**Verifica se o dado objeto é igual ao objeto Word. Objetos Word serão considerados iguais quando compartilharem o mesmo valor de id.
* @param word - Objeto qualquer.
* @return boolean - Resultado da comparação(verdadeiro ou falso).
*/
@Override
public boolean equals(Object word) {
try {
Word w = (Word) word;
return (getId() == w.getId());
}
catch (ClassCastException | NullPointerException ex) {
return false;
}
}
/**Objetos Word tem seus códigos hash definidos por seu atributo 'word'.
* @return int - Valor do código hashing.
*/
public int hashCode(){
return word.hashCode();
}
}
A propósito, uma vez serializado, o objeto só servirá para consultas, os elementos do Collection não serão alterados.
Agradeço desde já.