Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从ArrayList创建HashMap_Java_Android_Arraylist_Hashmap - Fatal编程技术网

Java 从ArrayList创建HashMap

Java 从ArrayList创建HashMap,java,android,arraylist,hashmap,Java,Android,Arraylist,Hashmap,我有两个ArrayList字符串,希望将它们合并到一个hashmap中。我正在做这样的事情 HashMap<ArrayList<String>,ArrayList<String>> map = new HashMap<ArrayList<String>, ArrayList<String>>(); ArrayList<String>k = receivedIntent.getStringArrayListEx

我有两个
ArrayList
字符串,希望将它们合并到一个hashmap中。我正在做这样的事情

HashMap<ArrayList<String>,ArrayList<String>> map = new HashMap<ArrayList<String>, ArrayList<String>>();

ArrayList<String>k =  receivedIntent.getStringArrayListExtra("keys");
ArrayList<String>v = receivedIntent.getStringArrayListExtra("values");

map.put(k, v);
HashMap map=newhashmap();
ArrayListk=receivedIntent.getStringArrayListExtra(“键”);
ArrayListv=receivedIntent.getStringArrayListExtra(“值”);
map.put(k,v);

这条路对吗?理想情况下,我希望使用k数组中的值作为hashmap中的键访问v数组中的值,如
value=map.get(“Name”)
,其中Name是键之一?

假设两个列表的长度相同,并且您希望元素作为键值对:

ArrayList<String> k =  receivedIntent.getStringArrayListExtra("keys");
ArrayList<String> v = receivedIntent.getStringArrayListExtra("values");
HashMap<String,String> map = new HashMap<String, String>();
for (int i = 0; i < k.size() && i < v.size(); ++i) {
  // putting each element of k/v into the map
  map.put(k.get(i), v.get(i));
}
ArrayList k=receivedIntent.getStringArrayListExtra(“键”);
ArrayList v=receivedIntent.getStringArrayListExtra(“值”);
HashMap=newHashMap();
对于(int i=0;i
首先,我们假设k和v的长度相等,并且键是唯一的。您可能希望用try/catch块包围映射

HashMap<String, String> map = new HashMap<String, String>();

ArrayList<String>k =  receivedIntent.getStringArrayListExtra("keys");
ArrayList<String>v = receivedIntent.getStringArrayListExtra("values");

for(int i = 0; i < k.size(); i++) map.put(k.get(i), v.get(i));
HashMap map=newhashmap();
ArrayListk=receivedIntent.getStringArrayListExtra(“键”);
ArrayListv=receivedIntent.getStringArrayListExtra(“值”);
对于(inti=0;i
否,这将只在地图中输入一个条目。您需要遍历这两个列表,并将条目分别放入其中。