Словарь <,> является эквивалентом. Хотя у него нет метода Get (...), у него есть индексированное свойство Item, к которому вы можете обращаться в C # напрямую, используя индексную нотацию:
class Test {
Dictionary<int,String> entities;
public String getEntity(int code) {
return this.entities[code];
}
}
Если вы хотите использовать пользовательский тип ключа, вам следует рассмотреть реализацию IEquatable <> и переопределение Equals (object) и GetHashCode (), если только равенство по умолчанию (ссылка или структура) не достаточно для определения равенства ключей. Вам также следует сделать тип ключа неизменяемым, чтобы предотвратить странные вещи, происходящие при изменении ключа после его вставки в словарь (например, из-за того, что мутация вызвала изменение его хэш-кода).