java.lang.ClassCastException:java.util.HashMap $ EntrySet无法转换为java.util.Map $ Entry [英] java.lang.ClassCastException: java.util.HashMap$EntrySet cannot be cast to java.util.Map$Entry
本文介绍了java.lang.ClassCastException:java.util.HashMap $ EntrySet无法转换为java.util.Map $ Entry的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个像这样的替代方法
I have an overrriden method like this
@Override
public Build auth (Map.Entry<String, String> auth) {
this.mAuth = auth;
return this;
}
这里尝试通过以下方式调用此方法
Here am trying to call this method in the following way
Map<String, String> authentication = new HashMap<String , String> ();
authentication.put("username" , "testname");
authentication.put("password" , "testpassword");
Map.Entry<String, String> authInfo =(Entry<String , String>) authentication.entrySet();
AuthMethod.auth(authInfo)
正在运行的同时获取
java.lang.ClassCastException: java.util.HashMap$EntrySet cannot be cast to java.util.Map$Entry
如何将Map.Entry<String, String>
传递给身份验证方法
How can i pass Map.Entry<String, String>
to auth method
推荐答案
您正尝试将集合转换为单个条目.
You are trying to cast a set to a single entry.
您可以通过迭代设置来使用每个条目:
You can use each entry item by iterating the set:
Iterator it = authentication.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry)it.next(); //current entry in a loop
/*
* do something for each entry
*/
}
这篇关于java.lang.ClassCastException:java.util.HashMap $ EntrySet无法转换为java.util.Map $ Entry的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文