Indexoutofbound异常无效索引大小是

时间:2011-09-21 21:34:17

标签: android arrays

我在这条线上得到了错误。这个数字为什么?

 private void method() {
    for(int i=0;i<list.size();i++){ 
       DbHelper.add(list.get(i),desc.get(i));
    }

谢谢....

1 个答案:

答案 0 :(得分:2)

desc.size()的声音小于list.size()

三个选项:

  • 首先验证:

    // Using Guava or something similar
    Preconditions.checkState(list.size() == desc.size());
    
  • 只能达到最低限度:

    for (int i = 0; i < list.size() && i < desc.size(); i++)
    
  • listdesc合并到复合类型的一个列表中。如果你有两个集合,你可以一起迭代,那么这通常表明你最好用一个集合来捕获组合实体。诚然,这取决于具体情况。