今天删除list中的元素时候得到这个报错
List<String> checkNameList = new ArrayList();
if (checkName != null && !checkName.equals("")){
checkNameList = Arrays.asList(checkName.split(","));
}
for (int i = 0; i < checkNameList.size(); i++) {
if (checkNameList.get(i).indexOf(cstaff.getSTAFF_NAME()) >= 0
&& checkNameList.get(i).indexOf(cstaff.getDEPT_NAME()) > 0 ){
checkNameList.remove(i);
}
}
经过排查 原因应该是赋值的时候 转换了list类型 从arraylisit 转为了arrays
arrays中的remove没有实现 直接弹出错误
解决方案:
List<String> checkNameList = new ArrayList();
if (checkName != null && !checkName.equals("")){
checkNameList = new ArrayList(Arrays.asList(checkName.split(",")));
}
for (int i = 0; i < checkNameList.size(); i++) {
if (checkNameList.get(i).indexOf(cstaff.getSTAFF_NAME()) >= 0
&& checkNameList.get(i).indexOf(cstaff.getDEPT_NAME()) > 0 ){
checkNameList.remove(i);
}
}
在=的时候,套一层,得到arrayList