我有一个List
,我试图以两种不同的方式使用它......
private List<List<List<String>>> mListSelectedsWeekDAY;
// technique 1
for(int t = 0; t < mListSelectedsWeekDAY.get(0).get(0).size();t++){
...
}
// technique 2
List<String> tmpList = mListSelectedsWeekDAY.get(0).get(0);
我的名单就像这样填充......
mListSelectedsSDAY = new ArrayList<List<List<String>>>();
for (int i = 0; i < mListTimeBand.size(); i++) {
List<List<String>> tmp2 = new ArrayList<List<String>>();
for (int j = 0; j < mListTimeBand.get(i).getTimeBandDefList().getTimeBandDefini().size(); j++) {
List<String> tmp1 = new ArrayList<String>();
if (mListTimeBand.get(i).getTimeBandDefList().getTimeBandDefini().get(j).isAllSpecialDays()) {
for (int t = 0; t < mListSDayType.size(); t++) {
tmp1.add(mListSDayType.get(t).getSpecialDayName());
}
}
tmp2.add(tmp1);
}
mListSelectedsSDAY.add(tmp2);
}
但是我的代码总是会出现以下错误...
java.lang.ClassCastException: [Ljava.lang.String; cannot be cast to java.util.List
有人可以帮我理解为什么会这样。
答案 0 :(得分:-1)
一种可能的情况可能是,在你的一系列Get方法()中,你正在前进以获得字符串并将其分配给List变量。
答案 1 :(得分:-1)
您实际上有一个List<List<String>>
,而不是List<List<List<String>>>
。
您必须在某处使用原始List
类型才能实现此目的