java.lang.IndexOutOfBoundsException:索引:xx,大小:xx

java.lang.IndexOutOfBoundsException:索引:xx,大小:xx,java,Java,我正在加载一个带有逗号分隔符的.csv文件,方法是使用jdom解析器拆分数据并插入数据库 但不知何故,我碰到了标题中提到的这个错误。 .csv文件包含超过200k条记录 当它读到大约4000条记录时,程序被抛出这个错误。 索引和大小是相同的值,但在此之前可以成功插入所有记录。只是想知道为什么它一直持续到几乎4k只出现这个错误 这是我的for循环: for(int x = 0; x < FLODS.getBufferSize(); x++) for(int x=0;x

我正在加载一个带有逗号分隔符的.csv文件,方法是使用jdom解析器拆分数据并插入数据库

但不知何故,我碰到了标题中提到的这个错误。 .csv文件包含超过200k条记录

当它读到大约4000条记录时,程序被抛出这个错误。 索引和大小是相同的值,但在此之前可以成功插入所有记录。只是想知道为什么它一直持续到几乎4k只出现这个错误

这是我的for循环:

for(int x = 0; x < FLODS.getBufferSize(); x++)
for(int x=0;x
但我在网上搜索了一下:他们建议采用这种方法

for(int x = 0; x < FLODS.getBufferSize()-1; x++)
for(int x=0;x

有什么想法吗?谢谢:)

java.lang.IndexOutOfBoundsException:Index:xx,Size:xx

非常常见的
异常
。这清楚地表明您正试图访问
xx
索引,其中
ArrayList
(例如)的大小也是
xx
。请始终记住,如果大小为
xx
,则只能在
xx-1
之前访问索引。如果您试图访问
xx
索引,其中的大小也是
xx
,则肯定会出现此错误

因此,来自互联网的建议要求您只遍历到任何大小的
-1


虽然您的
FOR
循环似乎没有问题,但可能是您正在尝试访问循环中的某个索引,该索引在某个点上比当前的
x
值大。

java.lang.IndexOutboundsException:index:xx,Size:xx

非常常见的
异常
。这清楚地表明您正试图访问
xx
索引,其中
ArrayList
(例如)的大小也是
xx
。请始终记住,如果大小为
xx
,则只能在
xx-1
之前访问索引。如果您试图访问
xx
索引,其中的大小也是
xx
,则肯定会出现此错误

因此,来自互联网的建议要求您只遍历到任何大小的
-1


虽然您的
FOR
循环似乎没有问题,但可能是您正在尝试访问循环中的某个索引,该索引在某个点上比当前的
x
值多
1。

java.lang.IndexOutOfBoundsException是一种异常类型,当索引为某种类型时会出现(例如数组、字符串或向量)超出范围,因此请检查分配的内存。
如果不查看for循环之前和内部的代码,就可以这么说了。java.lang.IndexOutOfBoundsException是一种异常类型,当某种类型的索引(例如数组、字符串或向量)超出范围时会出现,因此请检查分配的内存。
如果不查看for循环之前和内部的代码,就可以这么说。如果有一个嵌套的for循环并尝试访问第二个循环中的第一个变量,则这是一个错误

for(int i = 0;i<something.size(); i++) {
     //Some manipulations here..
     for(int j = 0;j<somethingElse.size(); j++) {
          //using blah(i) instead of blah(j) causes this issue
     }
}

for(int i=0;i当您有一个嵌套的for循环并试图访问第二个循环中的第一个变量时,这是一个错误

for(int i = 0;i<something.size(); i++) {
     //Some manipulations here..
     for(int j = 0;j<somethingElse.size(); j++) {
          //using blah(i) instead of blah(j) causes this issue
     }
}
for(int i=0;i
List div1=driver.findElements(By.xpath(“./*[@class='art\u title']));
对于(int i=0;i
List div1=driver.findElements(By.xpath(“./*[@class='art\u title']));

for(int i=0;我需要查看for循环内的代码以及引发errorWhat is循环体的行。引发了哪一行异常?我们需要查看for循环内的代码以及引发errorWhat is循环体的行。引发了哪一行异常?
List<WebElement> div1=driver.findElements(By.xpath(".//*[@class='art_title']"));
String[] abc = new String[div1.size()];

int i= 0;

for (WebElement e : div1) 
{
        abc[i] = e.getText();
        i++;            
        System.out.println(e.getText());
}