Мне нужен эффективный способ поиска пользователя по любой из 3-х различных клавиш.Например, id , имя пользователя или псевдоним .
Основной концепцией будет структура данных, в которой можно использовать любой изразличные типы ключей для поиска значения:
myDataStructure.lookupByName(name) -> User
myDataStructure.lookupById(id) -> User
myDataStructure.lookupByAlias(alias) -> User
Единственный непосредственный способ сделать это - иметь 3 отдельных словаря и использовать тот, который соответствует типупредоставляется ключ.
Есть ли более эффективный способ?