Этот набор кода создает ошибку переполнения стека из-за бесконечной рекурсии (по крайней мере, я думаю, это так). Я долго смотрел на этот код и не могу понять, где происходит ошибка. Если кто-нибудь может помочь указать, почему я получаю такую ошибку, это было бы здорово.Ошибка переполнения стека внутри кода
public void DrawValues(Graphics g, Graphics2D g2, int x, int y, int a, int b){
if (b>8){
b = 0;
a++;
x = 61;
y+=66;
}
if (a==8 && b==8){
g.drawString(String.valueOf(Solver.Rows[a][b]), x, y);
}
else{
g.drawString(String.valueOf(Solver.Rows[a][b]), x, y);
DrawValues(g,g2, x+66, y, a, b++);
}
}
Это, вероятно, поможет заявить, что Ряды является 9x9 2D массив, а и б старт при 0
не меняют 'b' где-нибудь в вашем коде, и вы должны' b' быть равным '8' для кода завершения. –