にコピーしていますので、これはjavaでいくつか問題があります。このメソッドは、多次元の2つのString配列を取り込むことになっています。このメソッドは、コピー文字列配列を返すことになっています。コピーメソッドに送られるこれらの2つの配列は、配列内でランダムに生成された長さを持つようになります。私はarray2が配列よりも小さいかどうかを調べようとしています。配列がarray2の長さに割り当てられ、配列の要素をarray2にコピーしたいとします。 array2がarrayより大きい場合、配列の要素をarray2にコピーし、array2のREMAININGスポットに*を埋め込むことができます。今問題は、インデックスの境界を超えてランタイムエラーが発生し続けることです。具体的には、以下の2つのアスタリスク(forループ内)で問題を示している行を示しています。この問題を解決するために私は何ができるでしょうか。多次元配列内の配列要素をJavaの
public static String[][][] copy(String[][][] array, String[][][] array2){
if(array2.length < array.length){
array = new String[array2.length][array2.length][array2.length];
for(int i = 0; i < array2.length; i++){
for(int j = 0; j < array2[i].length; j++){
for(int k = 0; k < array2[i][j].length; k++){
**array2[i][j][k] = array[i][j][k];**
}
}
}
return array2;
}
if(array2.length > array.length){
for(int i = 0; i < array.length; i++){
for(int j = 0; j < array[i].length; j++){
for(int k = 0; k < array[i][j].length; k++){
**array2[i][j][k] = array[i][j][k];**
}
}
}
for(int i = array.length - 1; i < array2.length; i++){
for(int j = array[i].length - 1; j < array2.length; j++){
for(int k = array[i][j].length - 1; k < array2.length; k++){
array2[i][j][k] = "*";
}
}
}
return array2;
}
return array;
}
誰かが入力を提供できますか? – user181421