2017-08-10 81 views
0

我有一个multimap。从Multimap中的键获得JSONArray值

Multimap<String,JSONArray> map = ArrayListMultimap.create(); 

我想获得所有基于关键值。但是,当我尝试,我收到以下错误:

Exception details: java.lang.ClassCastException: 
com.google.common.collect.AbstractMultimap$RandomAccessWrappedList cannot be 
cast to org.json.JSONArray 
java.lang.ClassCastException: 
com.google.common.collect.AbstractMultimap$RandomAccessWrappedList cannot be 
cast to org.json.JSONArray 

我试图做的事:

for (final String str : map.keySet()) { 
      final JSONArray jsonArr = (JSONArray) map.get(str); 
      //do something 
} 

有人能想出如何让jsonArray每个键集?

+0

'skillSetMap'是什么类型?你如何填充它? – shmosel

+0

@shmosel对不起,这只是一个map.corrected问题。 – SMP

+0

只是一个地图或多图?你了解multimaps的工作原理吗? – shmosel

回答

0

您可以像这样迭代Multimap的值。

for (Object value1 : map.values()) { 
    JSONArray val = (JSONArray) value1; 
    }