![](/img/trans.png)
[英]Java - Type mismatch (But both are from same type?!): cannot convert from HashMap<Integer,ArrayList<Integer>> to HashMap<Integer,ArrayList<Integer>>
[英]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.