Есть такой класс
class MyClass {
............
int getKey();
..........
}
Есть список этих объектов
List<MyClass> myList;
нужно объекты этого списка поместить в
Map<Integer, MyClass> myMap;
Есть что нибудь эффективней кроме
for (MyClass obj : myList)
myMap.put(obj.getKey(), obj);
Также рассматривается вариант с наследованием от HashMap/TreeMap
Попробуйте через java8 Stream-API
myList
.stream() //parallelStream()
.collect(Collectors.toMap(MyClass::getKey,Function.identity()))
Только учтите, что при таком подходе если будет дубликат ключей - то будет брошена ошибка IllegalStateException.
Продвижение своими сайтами как стратегия роста и независимости