想起来好久没更新自己的博客了 现在的技术基本满足开发需求 只是对部分开发需求进行学习上的小修小补 之后无聊记下DEBUG的异常经验吧 说不定可以给他人以参考
数组下标越界:
大都与循环、容量、序号相关 错误定位与复现比较容易
源码:
for(int M=0;M<list2.size();M++) {
list.get(M).put("DEFECT_CNAME_MultiSelect", list2.get(M).get("DEFECT_CNAME"));
}
习惯性用循环把list的表数据按条目拼接
但忘记考虑list.size小于list2.size的情况 实属低级错误
业务上list的表数据量很大,就忽视了这个问题。以至于debug时第一时间没有想到,陷入了固有思维。
由此可见当程序问题与业务结合时会变得复杂 需要灵活思考才行