想起来好久没更新自己的博客了 现在的技术基本满足开发需求 只是对部分开发需求进行学习上的小修小补 之后无聊记下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时第一时间没有想到,陷入了固有思维。
由此可见当程序问题与业务结合时会变得复杂 需要灵活思考才行
本文记录了一次由于忽视边界条件导致的数组下标越界问题,作者在循环拼接数据时,忽略了list.size小于list2.size的情况。这个看似简单的错误在业务数据量大时变得难以察觉,提醒我们在编程时需要更加灵活和细致,尤其是在业务逻辑与技术问题交织时。
1226

被折叠的 条评论
为什么被折叠?



