ArrayIndexOUtOfBoundsException significa que você está tentando acessar um index que não existe.
Nesse caso, para corrigir, você deveria verificar a inicialização do teu Array de String e da tua variável 'x', pois, de acordo com os trechos de código que você mostrou, são esses os pontos que podem estar causando o problema quando você tenta acessar um index do array.
Em resposta a [AJUDA] Tentando entender String em Java
1