По моему опыту, rpyc
на сегодняшний день является самым простым и изящным способом для этого.
(Я знаю, что это старый вопрос, просто наткнулся на него ..)
List<V> choices; // your list
Map<K,V> result = choices.stream().collect(Collectors.toMap(choice::getKey(),choice));
//assuming class "V" has a method to get the key, this method must handle case of duplicates too and provide a unique key.