我正在编写一个程序,在某些时候需要将两个不同长度的数组放入一个二维数组中。
有人知道为什么我在指定行收到 ArrayIndexOutOfBoundsException 吗?
String[][] proteinArray;
if(proteinsMomFinal.length > proteinsDadFinal.length)
{
proteinArray = new String[proteinsMomFinal.length][2];
}
else
{
proteinArray = new String[proteinsDadFinal.length][2];
}
for(int i = 0; i < proteinsMom.length; i++)
{
proteinArray[i][0] = proteinsMomFinal[i]; // error is here
}
for(int i = 0; i < proteinsDad.length; i++)
{
proteinArray[i][1] = proteinsDadFinal[i];
}
最佳答案
您应该在 for 语句中使用 ProteinsMomFinal。你怎么知道 ProteinsMom 和 ProteinsMomFinal 的长度相同?
for(int i = 0; i < proteinsMomFinal.length; i++)
{
proteinArray[i][0] = proteinsMomFinal[i]; // error is here
}
关于java - 插入数组时出现 ArrayIndexOutOfBoundsException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16072547/