繁体   English   中英

Java - 类型不匹配:无法从 ArrayList 转换为 Hashmap

[英]Java -Type mismatch: cannot convert from ArrayList to Hashmap

HashMap<String, String> cassandraorderInfo=Cassandraorderdetails.fetchorderdetailsofcassandra(order,Session3);

这里 fetchorderdetailsofcassandra function 定义如下。

public static ArrayList<HashMap<String, String>> fetchorderdetailsofcassandra(String orderid, Session session)

当我们运行上面的代码时出现以下错误

类型不匹配:无法从 ArrayList<HashMap<String,String>> 转换为 HashMap<String,String>

如何解决这个问题 当我尝试仅在 1 行进行更改时如何转换,在多个地方出现错误,那么有什么方法可以转换它来解决问题。

根据您编写的内容,您需要了解方法调用

Cassandraorderdetails.fetchorderdetailsofcassandra(order,Session3);

结果为ArrayList<HashMap<String, String>>类型的 object

意思是,这是一个 arraylist,其中每个元素都是一个 hashmap。

在上面的代码片段中,您试图将此调用返回的 object 直接转换为 hashmap。

HashMap<String, String> cassandraorderInfo=Cassandraorderdetails.fetchorderdetailsofcassandra(order,Session3);

那行不通的。

您需要在返回的 arraylist 中获取特定的 object,因为这将是一个 hashmap。

IE

ArrayList<HashMap<String, String>> data = Cassandraorderdetails.fetchorderdetailsofcassandra(order,Session3);
HashMap<String, String> element = data.get(0);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM