Por lo que puedo ver, tu codigo decrementa los contadores i, j en la siguiente condicion:
dicha condicion siempre es verdadera, y el contador i se volvera negativo: i = -1.
Por lo tanto, al ejecutarse la sig. linea:
Código:
x[i][j] = (int) (Math.random() * 10);
i es negativo y se genera el error.