获取错误。线程“main”java.lang.ArrayIndexOutOfBoundsException中出现异常:3

获取错误。线程“main”java.lang.ArrayIndexOutOfBoundsException中出现异常:3,java,selenium-webdriver,Java,Selenium Webdriver,我无法执行上面的代码,如果我尝试调试,我不会得到任何结果。我可以看到for循环中存在您的问题: 第一:从rowNum=2开始循环,数组中的第一个索引将是rowNum-1,这意味着您将从索引1开始,而不是从0开始 第二:数据数组中的列数是col-4 如果我们假设col=6,那么列数=6-4=2 您的for循环:从0到col-3=3,数据列-->中只有2个元素,因此在这里您将获得ArrayIndexOutOfBoundsException,您的问题是什么?您能发布异常堆栈跟踪吗?线程main jav

我无法执行上面的代码,如果我尝试调试,我不会得到任何结果。

我可以看到for循环中存在您的问题:

第一:从rowNum=2开始循环,数组中的第一个索引将是rowNum-1,这意味着您将从索引1开始,而不是从0开始

第二:数据数组中的列数是col-4 如果我们假设col=6,那么列数=6-4=2
您的for循环:从0到col-3=3,数据列-->中只有2个元素,因此在这里您将获得ArrayIndexOutOfBoundsException

,您的问题是什么?您能发布异常堆栈跟踪吗?线程main java.lang.ArrayIndexOutOfBoundsException中的异常:3 at RoughWork.TestDataExtract2.getDataTestDataExtract2.java:28 atmainTestDataExtract2.java:9
package RoughWork;

import com.omnitech.util.Xls_Reader;

public class TestDataExtract2 {

    public static void main(String[] args) {
        Xls_Reader x = new Xls_Reader(System.getProperty("user.dir")+"\\src\\com\\omnitech\\xls\\TestSuiteA.xlsx");     
        getData(x,"TestCase_1");

    }

    public static Object[][] getData(Xls_Reader xls, String testCaseName){
        if(! xls.isSheetExist("TestCase_1")){
            xls=null;
            return new Object [1][0]; 
        }

        int rows = xls.getRowCount("TestCase_1");
        int col = xls.getColumnCount("TestCase_1");
        //System.out.println("rows are --" + rows);
        //System.out.println("col are --" + col);

        Object[][] data = new Object[rows-1][col-4];
        for(int rowNum=2;rowNum<=rows;rowNum++){
            for(int colNum=0;colNum<=col-3;colNum++){

                data[rowNum-1][colNum] = xls.getCellData(testCaseName,rowNum, colNum);
                //System.out.print(xls.getCellData(testCaseName, colNum, rowNum)+"--");{
                    //System.out.println();
                }
            }


        return data;

    }


}