Here you can find the source of toMap(Object[] array)
Converts the given array into a java.util.Map .
Parameter | Description |
---|---|
array | an array whose elements are either a java.util.Map.Entry or an Array containing at least two elements, may be null |
Parameter | Description |
---|---|
IllegalArgumentException | if the array contains elements otherthan java.util.Map.Entry and an Array |
public static Map<Object, Object> toMap(Object[] array)
//package com.java2s; import java.util.HashMap; import java.util.Map; public class Main { /**//from w w w . j a v a 2 s . c om * <p>Converts the given array into a {@link java.util.Map}. Each element of the array * must be either a {@link java.util.Map.Entry} or an Array, containing at least two * elements, where the first element is used as key and the second as * value.</p> * * <p>This method can be used to initialize:</p> * <pre> * // Create a Map mapping colors. * Map colorMap = MapUtils.toMap(new String[][] {{ * {"RED", "#FF0000"}, * {"GREEN", "#00FF00"}, * {"BLUE", "#0000FF"}}); * </pre> * * <p>This method returns {@code null} for a {@code null} input array.</p> * * @param array an array whose elements are either a {@link java.util.Map.Entry} or * an Array containing at least two elements, may be {@code null} * @return a {@code Map} that was created from the array * @throws IllegalArgumentException if one element of this Array is * itself an Array containing less then two elements * @throws IllegalArgumentException if the array contains elements other * than {@link java.util.Map.Entry} and an Array */ public static Map<Object, Object> toMap(Object[] array) { if (array == null) { return null; } final Map<Object, Object> map = new HashMap<Object, Object>((int) (array.length * 1.5)); for (int i = 0; i < array.length; i++) { Object object = array[i]; if (object instanceof Map.Entry<?, ?>) { Map.Entry<?, ?> entry = (Map.Entry<?, ?>) object; map.put(entry.getKey(), entry.getValue()); } else if (object instanceof Object[]) { Object[] entry = (Object[]) object; if (entry.length < 2) { throw new IllegalArgumentException( "Array element " + i + ", '" + object + "', has a length less than 2"); } map.put(entry[0], entry[1]); } else { throw new IllegalArgumentException( "Array element " + i + ", '" + object + "', is neither of type Map.Entry nor an Array"); } } return map; } }