私は配列を作成しようとしている半難しい問題を解決しようとしています。次元のint配列です。私が返そうとしている配列は、3次元の文字列配列です。だからここのコードは次のとおりです。メソッド配列パラメータから多次元文字列配列を作成する
public class Displaydata {
static String[][][] makeArray(int[][] dimensions) {
String myArray[][][];
for (int i = 0; i < dimensions.length; i++) {
for (int j = 0; j < dimensions[i].length; j++) {
myArray[][][] = new String[i][j][]; //getting error here.
}
}
return myArray;
}
static void printArray(String[][][] a) {
for (int i = 0; i < a.length; i++) {
System.out.println("\nrow_" + i);
for (int j = 0; j < a[i].length; j++) {
System.out.print("\t");
for (int k = 0; k < a[i][j].length; k++)
System.out.print(a[i][j][k] + " ");
System.out.println();
}
}
}
public static void main(String[] args) {
int [][] dim = new int[5][];
dim[0] = new int[2];
dim[1] = new int[4];
dim[2] = new int[1];
dim[3] = new int[7];
dim[4] = new int[13];
dim[0][0] = 4;
dim[0][1] = 8;
dim[1][0] = 5;
dim[1][1] = 6;
dim[1][2] = 2;
dim[1][3] = 7;
dim[2][0] = 11;
for (int i = 0; i < dim[3].length;i++)
dim[3][i] = 2*i+1;
for (int i = 0; i < dim[4].length;i++)
dim[4][i] = 26- 2*i;
String[][][] threeDee = makeArray(dim);
printArray(threeDee);
}
}
あなたは私が返すようにしようよ私の3次元配列のインスタンスを作成しようとすると、私はエラーを取得しています、ソースコードから見ることができるように。私は、次元の長さによって決定される最上位行の数を持つ3次元配列を作成することになっていて、各最上位行iについて、第2レベル行の数は次元[i ]。最上位行iの第2レベル行jの列数は、dimensions [i] [j]の値によって決まります。各配列要素の値は、最上位の行インデックスと第2レベルの行インデックスと列インデックスとの連結で、インデックスは文字で表されます。 'A'は0、 'B'は1などです。もちろん、これはインデックスが25を超えない場合にのみ当てはまります。)私はどこに間違っているのか必ずしも分かりません。ありがとう!私はあなただけにその行を変更すべきだと思う
"_エラーが発生しました... _"エラーは何ですか?あなたはスタックトレースを投稿できますか? – csmckelvey
Greetings takendarkk、プログラムがコンパイルされないためスタックトレースが利用できません。私はコンパイルを防ぐために何をやっているのか分かりません。あなたが共有する洞察力があるなら、どうかしてください。ありがとう! – Linuxn00b
コンパイルエラーとは何ですか? – csmckelvey