Problema com a verificação de um valor no array

Estou fazendo uma lista de exercícios da faculdade e um deles pede para que eu faça uma calculadora que consegue realizar contas com números complexos. A ideia que tive foi criar uma string para que o usuário digite a expressão matemática, transformei a string em um Array e eu queria verificar cada posição do array, de forma a descobrir quais são os números complexos da equação, levando em consideração que se a posição [i+1] for i e a posição [i] for igual ao numero inteiro, então esse numero será um numero complexo. Porém, não estou sabendo como fazer essa verificação se o número é ou não inteiro. Trecho do meu código:

public void escreveExpressao() {
char[] arrayExp = expressao.toCharArray();

	for(int i=0; i<expressao.length(); i++) {
		if(arrayExp[i+1] == 'i' && arrayExp[i] == xxxxxx) {
			
		}
	}
}

Bem vindo.

Crie um método para retornar true ou false conforme abaixo e faça o uso dele dentro do for, percorrendo o array e a String:

private static boolean isInteger(String str) {
        return str != null && str.matches("[0-9]*");
    }