Java 数组索引超出边界输入数据时出错

Java 数组索引超出边界输入数据时出错,java,arrays,input,indexoutofboundsexception,Java,Arrays,Input,Indexoutofboundsexception,我试图将数据文件中的数字输入数组。然而,我保持我得到一个数组索引越界错误。下面是报告错误的代码块 Scanner myIn = new Scanner(new FileInputStream(("Data10.txt"))); for(int x=0; x<n.length; x++) for(int j=0;j<s.length();j++) { n[x][j] = Character.getNumericValue(s.charAt(j));

我试图将数据文件中的数字输入数组。然而,我保持我得到一个数组索引越界错误。下面是报告错误的代码块

Scanner myIn = new Scanner(new FileInputStream(("Data10.txt")));

for(int x=0; x<n.length; x++)   
    for(int j=0;j<s.length();j++)
    {
      n[x][j] = Character.getNumericValue(s.charAt(j));

    }
对于j索引,需要数组第二维度的长度,而不是字符串的长度

for(int j=0;j<s.length();j++)
应该是

for(int j=0;j<n[i].length;j++)

注:计数器通常命名为i、j、k,而不是x

您是否尝试过使用调试器单步执行代码?Netbeans?n和s是什么?public int readDataIntsint[][]n,字符串s{int max=0;尝试{n是学习调试的2d数组时间。@robertducharm很可能s长度大于j,因此您会出现此错误。