Falso retorno; la declaración no "devuelve"

Mi declaración falsa de devolución no funciona como se esperaba. Tengo un método recursivo llamado "prosegui", funciona con la mayoría de las palabras con las que quiero trabajar, pero con algunas de ellas, return false no devuelve el valor "false" como debería, pero continúa y termina volviendo cierto.

if (contChar < this.parola.length() - 1) {
    if (this.parola.charAt(contChar+1)==matrice[i][j])
    {
        prosegui(proseguiI,proseguiJ,i,j,contChar+1);
    } 
    else 
    {
        System.out.println("FALSE");
        return false;
    }
}

System.out.println("TRUE");
return true;

Realmente no sé cómo solucionarlo.

EDITAR:

el programa imprime "FALSO" y luego "VERDADERO"

EDITAR:

public boolean prosegui(int i, int j, int proseguiI, int proseguiJ, int contChar)
{
    if (contChar < this.parola.length() - 1)
    {
        int direzioneI=proseguiI-i;
        int direzioneJ=proseguiJ-j; 
        i=proseguiI+direzioneI;
        j=proseguiJ+direzioneJ;

        int cont;
        StringTokenizer st = new StringTokenizer(this.results);

        cont=0;

        char[][] matrice = new char[this.lung][this.lung];

        while (st.hasMoreTokens())
        {
             matrice[cont]=st.nextElement().toString().toCharArray();
             cont++;
        }

        if(this.parola.charAt(contChar+1)==matrice[i][j]){

        prosegui(proseguiI,proseguiJ,i,j,contChar+1);
    }
    else 
    {
        System.out.println("FALSE");
        return false;
    }
}

System.out.println("TRUE");
return true;
}
Respuesta 1

Si este código está en el método prosegui, entonces cuando se llama a sí mismo aquí:

prosegui(proseguiI,proseguiJ,i,j,contChar+1);

El verdadero / falso devuelto por esta llamada nunca se usa.

Respuesta: 2

su función no puede devolver falso al ingresar prosegui (...) recursivamente, porque no verifica el resultado de su llamada recursiva, siempre devolverá verdadero.

Respuesta: 3

¿Alguien puede decirme por qué esto no se compila? TestClass de clase pública {doThis booleano privado = falso; vacío protegido fooThat () {} vacío protegido fooThis () {} público vacío ejecutar () ...

Cómo padarray en java que es agregar filas y columnas a una matriz existente al frente y atrás con un número dado. Por ejemplo: - sea x = 1 2 3 4 5 6 7 8 9 y ahora quiera ...

Tengo un proyecto de Java que hace el "laberinto de Windows" y uso el algoritmo de proyección de rayos. Aquí hay una captura de pantalla: Como puede ver, todas las paredes tienen el mismo tamaño de altura. Me gustaría hacer lo mismo pero ...

Equipo, obteniendo el siguiente error en mi archivo pom. Fase de ciclo de vida desconocida "compilación". Debe especificar una fase de ciclo de vida válida o un objetivo en el formato. Revisé la URL proporcionada pero aún obtengo ...