Это не так уж и много, но давайте посмотрим:
Допустим, у вас есть int[10]
, и вы хотите сохранить их в HashMap
(Словари в наши дни мало используются),Вы можете сделать это:
Map<Integer, Integer> dict = new HashMap<Integer, Integer>();
for(int i = 0; i < array.length; i++) {
dict.put(i,array[i]); // autoboxing takes care of primitives
}
Если вы хотели использовать фактические значения в массиве в качестве ключей в словаре, то вам нужно спросить себя: «Откуда берутся значения моего словаря?»
Например, если вы хотите, чтобы значения были индексом, вы можете просто изменить приведенное выше
dict.put(array[i],i);
Возможно, у вас есть другой массив с некоторыми значениями в нем.
int[] intArray = ...
String[] strArray = ...
Map<Integer, String> dict = new HashMap<Integer, String>();
for(int i = 0; i < array.length; i++) {
dict.put(intArray[i], strArray[i]); // autoboxing takes care of primitives
}
Проще говоря, у вас есть put
метод.Первый параметр будет ключевым, второй параметр будет значением.Пока вы перебираете массив, у вас будут ключи;тогда это просто вопрос того, какие значения туда входят.