1) Да, но не эффективным способом, и в интерфейсе Map
нет методов для этого с одним вызовом метода.Вам придется перебирать записи на карте, пока не найдете нужное значение;тогда у вас есть ключ соответствующей записи.Существуют такие реализации, как Google Guava BiMap
, которые позволяют эффективно выполнять обратный поиск.
2) Нет, поскольку карта не является упорядоченной коллекцией: ключи не имеют определенногоположение на карте.Если вам это нужно, вы можете использовать, например, LinkedHashMap
, который сохраняет пары ключ-значение в том порядке, в котором они вставлены в карту.