Atualizar um Label?

2 respostas Resolvido
stringjavafx
gcherobim

Bom dia. Estou tendo problemas para atualizar o Label de um programa. Na classe da qual eu pego a String, fiz dois métodos, um para pegar a String inicial:

public String getPalpitePuzzle() {
    String palpiteStr = "";
    for (int i = 0; i < puzzle.length(); i++) {
        if (String.valueOf(palpitePuzzle[i]).equals(" "))
            palpiteStr = palpiteStr + " ";
        else 
            palpiteStr = palpiteStr + "_";
    }
    return palpiteStr;
}

e outro para atualizar a String

public String atualizaPalpite(String palpite, String palpiteStr) {
    String palpiteAtual = new String("");
    for (int i = 0; i < palpiteStr.length(); i++) {
        if (String.valueOf(palpiteStr.charAt(i)).equals(palpite))
            palpiteAtual = palpiteAtual + palpite;
        else
            palpiteAtual = palpiteAtual + String.valueOf(palpiteStr.charAt(i));
    }
    return palpiteAtual;
}

O primeiro método funciona normalmente, mas o segundo não. Quando chamo a função no controller

labelPuzzle.setText(tabuleiro.atualizaPalpite(button.getText(), labelPuzzle.getText()));

ele continua mostrando a String inicial. Como posso proceder?

2 Respostas

j-menezes
Solucao aceita

Tá parecendo erro de logica, que é bastante comum no desenvolvimento.
Basta debugar e ir observando a variavel palpiteAtual dentro do laço;

gcherobim

Verdade. Era erro de lógica, mesmo. Eu estava comparando uma String com ela própria, não ia mudar jamais hahaha.
Obrigado plea dica, nem lembrei de debugar.

Criado 28 de julho de 2020
Ultima resposta 28 de jul. de 2020
Respostas 2
Participantes 2