java - windowbuilderpro - windowbuilder eclipse download




Genera una nuova stringa (2)

Quindi ho il codice che quando si preme il mouse genera un codice casuale in una casella di testo, quindi quando si preme enter, si suppone di cancellare la suddetta casella di testo e la sostituzione è con una nuova stringa casuale, ma prende semplicemente la stessa stringa casuale . Ad esempio faccio clic con il mouse e viene generato "hps", faccio clic su "invio" e "hps" viene generato di nuovo. C'è un modo per ottenere una nuova stringa dal mio generatore?

        public void mouseClicked(MouseEvent arg0) {
            RandSt string = new RandSt(); 
            textField_tf.setText(string.randStr());
            }

Ricevi sempre la stessa String ogni volta che la variabile chosen non viene ripristinata dopo aver generato una String casuale.

Affinché il metodo randStr restituisca ogni volta String diverse, è necessario reimpostare la variabile chosen ogni volta che viene chiamato il metodo randStr .

Quindi dichiara la variabile chosen all'interno del tuo metodo randStr modo che venga resettata ogni volta che viene chiamato il metodo randStr .


chosen non viene ripristinato dopo aver generato una String . Una soluzione molto semplice sarebbe quella di aggiungere questa riga all'inizio del tuo metodo:

chosen = "";

Vorrei tuttavia consigliare di utilizzare un metodo completamente diverso, ad esempio quello spiegato qui :

import java.security.SecureRandom;
import java.math.BigInteger;

public final class SessionIdentifierGenerator {
    private SecureRandom random = new SecureRandom();

    public String nextSessionId() {
        return new BigInteger(130, random).toString(32);
    }
}




jframe