我正在编写一个程序,在某些时候需要将2个不同长度的数组放入一个二维数组中。
有谁知道为什么我在指定的行收到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];
}
答案 0 :(得分:1)
你应该在for语句中使用proteinsMomFinal。你怎么知道蛋白质的质量与蛋白质的最终长度相同?
for(int i = 0; i < proteinsMomFinal.length; i++)
{
proteinArray[i][0] = proteinsMomFinal[i]; // error is here
}