数独ジェネレーターを書いています。
static void change(int[][] x, int[][] y, int[][] z, int[][] w, int[][] u, int k) {
int a = r1.nextInt(9);
int b = r2.nextInt(2);
int c = r3.nextInt(2);
if (x[b][c] != 0 && vcheck(a, c, x, y, z) != false && hcheck(a, b, x, u, w) != false && tcheck(a, x) != false) {
x[b][c] = a;
k--;
} else change(x, y, z, w, u, k);
}
プログラムのこの部分は、ランダムに生成された位置 (b、c) のテーブルの数値を値 a に変更することを開始する void です。スローされたエラーは
Exception in thread "main" java.lang.StackOverflowError
at java.util.Random.nextInt(Random.java:307)
誰かが私に何を変えるべきか教えてもらえますか?