我在尝试方法时遇到转换错误。 我无法弄清楚这里的实际问题。
(List) 成员 --> 此行正在生成转换错误,因为类无法转换为 List。
如何更新此问题?
java.lang.ClassCastException:com.test.Member 无法转换为 java.util.List 在 com.test.impl.Main.splitMembersByState
protected Map< String, List< Member>> splitMembersByState(List< Member> validMembers) {
// TODO
Map< String, List< Member>> membersSplitByState = new HashMap<String, List<Member>>();
List<Member> tempList = validMembers;
for (Member member : validMembers) {
membersSplitByState.put(member.getState(), (List<Member>) member);
}
return membersSplitByState;
}
谢谢。
最佳答案
membersSplitByState 是 String -> List 并且您试图将一个成员放入其中(成员)。
在这里,您希望将您的成员放入成员列表中,而不是直接放在 map 中。类似这样的事情:
Map< String, List< Member>> membersSplitByState = new HashMap<String, List<Member>>();
List<Member> tempList = validMembers;
for (Member member : validMembers) {
List<Member> membersWithState;
if (membersSplitByState.containsKey(member.getState()) {
membersWithState = membersSplitByState.get(member.getState());
} else {
membersWithState = new ArrayList<Member>();
membersSplitByState.put(member.getState(), membersWithState);
}
membersWithState.add(member);
}
return membersSplitByState;
关于java - 无法使用 List 进行强制转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37039707/