我只是在学习在java中使用多维数组。
当我尝试创建用户输入的值的 3x3 矩阵时,我遇到了错误。
import java.util.Scanner;
public class myMatrix
{
public static void main(String args[])
{
double[][] matrixOne = new double[3][3];
double[][] matrixTwo = new double[3][3];
double[][] finalMatrix = new double[3][3];
Scanner takeInput = new Scanner(System.in);
System.out.println("Enter values of matrix One");
for(int i=0;i<3;i++)
{
for(int j=0;i<3;j++)
{
matrixOne[i][j] = takeInput.nextDouble();
}
}
System.out.println("Enter values of matrix Two");
for(int i=0;i<3;i++)
{
for(int j=0;i<3;j++)
{
matrixTwo[i][j] = takeInput.nextDouble();
}
}
for(int i=0;i<3;i++)
{
for(int j=0;i<3;j++)
{
finalMatrix[i][j] = matrixOne[i][j] + matrixTwo[i][j];
System.out.print(finalMatrix[i][j] + "t");
}
System.out.println();
}
}
}
输入 4 个数字后,我收到数组索引超出界限的错误。
这是为什么呢?
我在程序中犯了什么错误吗?
for(int j=0;i<3;j++)
{
matrixOne[i][j] = takeInput.nextDouble();
}
在此循环中,您正在检查i<3
不j<3
这会导致错误。
这只是一个小错误。你的第二个"for"循环使用"j"作为变量,但检查"i"的条件
for(int j=0;i<3;j++)
所有内部循环都有相同的问题:
for(int j=0;i<3;j++)
应该是j而不是i。
将其更改为以下代码:
for(int j=0;j<3;j++)