我有一个SortedMap<String, SortedMap<String, Integer>>
。每个字符串都是一个问题,并附有可能的答案和要点。
如何使用Map
像sampleArray[0]
一样打印问题(第一个,第二个,...)?
最佳答案
您可以遍历地图的一种方法是:
for (String aQuestion : myMap.keySet()) {
System.out.println(aQuestion)); //Prints each question.
System.out.println(myMap.get(aQuestion)); //Prints each answer using the same for loop
}
要获得答案,您也可以执行以下操作:
myMap.values();
这将获得具有所有值的Collection,或者根据您的情况提供答案。 Collection有一个toArray()方法,该方法将返回一个普通数组以方便迭代。但是,您也可以使用ArrayList的addAll(Collection c)方法创建一个arraylist。
List<String> myAnswers = new ArrayList<>();
myAnswers.addAll(myMap.values());