Java 如何迭代包含映射的列表并获取该映射的键和值

Java 如何迭代包含映射的列表并获取该映射的键和值,java,list,dictionary,Java,List,Dictionary,我有一个列表,其中包含一个关于类类型的映射。我想迭代该列表,并获取内部映射的键和值 以下是列表: quotationList = quotationService.searchByIdList(accountId, Account.class); 它包含一个索引,即索引为0时,它包含一个映射。我需要得到那张地图的键和值 我的尝试: for (int i = 0; i < quotationList.size(); i++) { Map myMap = (Map)

我有一个
列表
,其中包含一个关于类类型的映射。我想迭代该
列表
,并获取内部映射的

以下是
列表

quotationList =  quotationService.searchByIdList(accountId, Account.class);
它包含一个索引,即索引为0时,它包含一个映射。我需要得到那张地图的键和值

我的尝试:

for (int i = 0; i < quotationList.size(); i++) {
            Map myMap = (Map) quotationList.get(i);
            System.out.println("Data For Map" + i);
            for (Entry<String, Object> entrySet : ((Map<String, Object>) myMap).entrySet()) {
                System.out.println("Key = " + entrySet.getKey() + " , Value = " + entrySet.getValue());
            }
        }
for(int i=0;i
要获取列表中的第一项:

Map<MyKey, MyValue> myMap = quotationList.get(0);
下一步是循环该入口集:

    for (Entry<MyKey, MyValue> entry : myMap.entrySet()) {
        MyKey key = entry.getKey();
        MyValue value = entry.getValue();
    }
for(条目:myMap.entrySet()){
MyKey=entry.getKey();
MyValue=entry.getValue();
}

Java8:如果您的地图是
map
,那么

quotationList.forEach(item -> item.entrySet().forEach(entry -> {
        String key = entry.getKey();
        String value = entry.getValue();
    }));

如果case list包含元素,那么代码应该打印映射的内容

下面是列表中有一个映射元素的代码,它正在打印映射的内容:

myMap.entrySet();
List>quotationList=new ArrayList>()

Map Map=newhashmap();
地图放置(“键1”、“值1”);
quotationList.add(地图);
对于(int i=0;i
它将产生如下输出:

Map0的数据
Key=key1,Value=value1

for(int i=0;在初始化列表时输入列表的类型,例如:List quotationList=new ArrayList();然后在quotationsList.get(i)处正确地将其键入cast。否则您的逻辑似乎正确:)quotationList的声明是什么,为什么需要
映射
cast?你怎么了?请提供一个,显示列表声明,插入该列表的数据示例,…它给了我一个类强制转换异常,com.mycaptionlabs.domain.user.Account不能强制转换为java.util.Map您在该
列表中有一个
帐户
实例,而不是
映射。这就是为什么给我们提供每一个信息是很重要的。您希望获得并打印的
地图是什么?请用这些信息回答这个问题。我也尝试过类似的方法。但不起作用。将对象转换为映射时出现异常。如果您没有
列表
,则可能是quotationList不包含MapIt包含的内容,因为如果我将其放入映射并将其传递到前端,它将显示所有值Show您可以确定,您是否可以尝试将其放在您的代码系统上。out.println(quotationList.get(0)图的实例);它在大多数情况下都可以正常工作,但在这种情况下不行,因为它包含一个模型实例。
    Map<String, Object> map= new HashMap<String, Object>();
    map.put("key1", "value1");

    quotationList.add(map);

    for (int i = 0; i < quotationList.size(); i++) {
        Map myMap = (Map) quotationList.get(i);
        System.out.println("Data For Map" + i);
        for (Entry<String, Object> entrySet : ((Map<String, Object>) myMap).entrySet()) {
            System.out.println("Key = " + entrySet.getKey() + " , Value = " + entrySet.getValue());
        }
    }