今天好,这有点让我迷惑(大脑冻结!)好像少了些什么。有一个我用HashMap填充的ArrayList。现在我放入了我的HashMap和ArrayList。
Map.put(DATE, value1);
Map.put(VALUE, value2);
arraylist.put(Map);
由于am解析JSON,arraylist的大小显著增加。现在我的问题是如何从ArrayList中的两个映射键中获得值?我试过这个
if(!list.isEmpty()){ // list is an ArrayList
for(int k = 0; k < list.size(); k++){
map = (HashMap)list.get(k);
}
}
Log.d(TAG, "map size is" + map.size());
String [] keys = new String[map.size()];
String [] date_value = new String[map.size()];
String [] value_values = new String[map.size()];
int i = 0;
Set entries = map.entrySet();
Iterator iterator = entries.iterator();
while(iterator.hasNext()){
Map.Entry mapping = (Map.Entry)iterator.next();
keys[i] = mapping.getKey().toString();
date_value[i] = map.get(keys[i]);
if(keys[i].equals(DATE)){
date_value[i] = map.get(keys[i]);
} else if(keys[i].equals(VALUE)){
value_values[i] = map.get(keys[i]);
}
i++;
}
但我似乎不能得到所有的值。映射大小总是返回值2,这只是元素。如何从ArrayList中的映射键获取所有值?谢谢
当你已经有事情做你的工作的时候,你为什么要重新发明轮子。map.keyset()
方法提供映射中所有键的集合。
Map<String, Integer> map = new HashMap<String, Integer>();
for (String key: map.keySet()) {
System.out.println("key : " + key);
System.out.println("value : " + map.get(key));
}
另外,你的第一个for循环在我看来很奇怪:-
for(int k = 0; k < list.size(); k++){
map = (HashMap)list.get(k);
}
您正在迭代列表,并将每个元素分配给相同的reference-map
,这将覆盖前面的所有值。你将得到的只是你列表中的最后一张地图。
编辑:-
如果需要映射的键和值,还可以使用entryset
。那对你更好:-
Map<String, Integer> map = new HashMap<String, Integer>();
for(Entry<String, Integer> entry: map.entrySet()) {
System.out.println(entry.getKey());
System.out.println(entry.getValue());
}
附注:-
你的代码在我看来乱七八糟。我建议,把代码放在一边,再考虑一次设计
。就目前而言,就代码而言,很难理解它想要做什么。
我如何从一个HashMap填充JList而只在列表中显示值呢?
我通过一个接一个地放置值来创建HashMap。当我在每次迭代后打印hashmap时,生成的hashmap包含所有键的相同值。我不明白为什么会这样。我已经粘贴了下面的输出 HashMap(String,List(Object))mRestrictions; 输出:- 逐个限制:-{profile\u name=[Test1]} 逐个限制:-{profile\u name=[url],url=[url
问题内容: 我想存储值并从Java HashMap中检索它们。 这是我到目前为止所拥有的: 我想从HashMap中检索所有键和值作为Java集合或实用程序集(例如)。 我知道只要知道密钥就可以获取值,例如: 有没有办法检索键值作为列表? 问题答案: Java Hashmap键值示例:
我想存储值并从Java HashMap中检索它们。 这是我目前所拥有的: 我想从HashMap中检索所有键和值,作为Java集合或实用程序集(例如,LinkedList)。 我知道如果我知道键,我可以得到值,如下所示: 有没有办法以列表的形式检索键值?
问题内容: 您如何在中搜索密钥?在此程序中,当用户输入密钥时,代码应安排在哈希图中搜索相应的值,然后进行打印。 请告诉我为什么它不起作用。 问题答案: 只需致电:
我是API的新手,正在使用JSON,希望在这里得到一些帮助。 我知道我想要完成的所有事情都可以使用PRAW库来完成,但我试图在没有PRAW的情况下弄清楚。 我有一个for循环,它从一个特定的子编辑中提取文章标题,将所有的文章标题输入到一个pandas数据帧中,在达到限制后,将< code >‘after 参数更改为最后一个文章id,以便在下一批中重复。 一切都很完美,但是当我对特定线程尝试相同的技