我对HashMap创作有疑问.有一种简单而快速的HashMap创作方式吗?也许,连接两个数组{1, 2, ...}和{"picture/one.png", "picture/two.png", ...}.我对一个简洁的解决方案感兴趣.最好的做法,这么说.
每个指导或提示都会非常有用.谢谢.
编辑:是的,我知道如何发起一个HashMap.我看着javadoc(甚至没有一次).对不起我的问题的错误解释,也许不是很清楚.再一次,我对最佳实践解决方案感兴趣.如果最佳实践解决方案是for循环,那就是它.如果有其他选择,请显示.
对的,这是可能的:
public static <K,V> Map<K,V> mapFromArrays(K[] keys,V[]values){
HashMap<K, V> result=new HashMap<K, V>();
for(int i=0;i<keys.length;i++){
result.put(keys[i], values[i]);
}
return result;
}
Run Code Online (Sandbox Code Playgroud)
假设键和值具有相同的长度.
您也可以在静态初始化程序中使用此函数,如下所示:
private static Integer[] keys=new Integer[]{1,2,3};
private static String[] values=new String[]{"first","second","third"};
private static Map<Integer,String> myMap;
{
myMap=mapFromArrays(keys, values);
}
Run Code Online (Sandbox Code Playgroud)