Comparar caracter por caracter de uma string com o método equals

8 respostas
G

Alguém pode me responder essa. Quero pegar letra por letra de uma string e se uma dela for um espaço em branco quero abrir uma tela de aviso. Mas tá dando erro de incompatibilidade.Para akeles mais experientes, como posso resolver isso?

String placa = jft_placa.getText();

for(cont_letras=0;cont_letras <3;cont_letras++)
        {
            char aux = placa.charAt(cont_letras);
            if("".equals(aux))      ----->  dando erro bem aki, dizendo que o metodo .equals são de tipos incompatíveis
            new PlacaInvalida().show();   
                
        }

8 Respostas

InicianteJavaHenriqu

É porque são incompatíveis mesmo. char é um tipo de dado primitivo e String uma classe. Para comparar char use ==

:thumbup:

G

Poxa, tem certeza? Acabei de colocar ==, as continua dizendo que dá erro de incompatibilidade:(

R

Qual seria a real intenção? Saber se tem espaço e solicitar que digite novamento sem? Porque se for, acho mais facil utilizar o comando replace ex: “Variavel.replace(” ", “”); " ele vai retirar o espaço.

R

Mais uma coisa, se for compar, vc deve utilizar variavel do tipo String, pois o “espaço” náo é considerado caracter.

G

Na verdade são os primeiros carecteres de uma placa, por exemplo JWH…mas caso o bizonho do cliente, sei lá, acabe digitando um espaço ( a gente tem que pensar em tudo ), e fike só WH, quer o informar a ele q a placa não é válida, se eu conseguir pra essas primeiras letras, depois faço para os 4 numeros seguintes da placa, que tambem estarão na string.

R

Da uma olhada neste codigo ai e qualquer coisa me fala:

public class teste {

public static void main(String[] args) {

String placa = ush5455;

int temEspaco = 0;

int j = 1;

for (int i = 0; i < placa.length(); i++) {

if (placa.substring(i, j).equals(" ")) {

temEspaco++;

}

j++;

}

if (temEspaco != 0) {

System.out.println(Tem Espaço);

} else {

System.out.println(Nao tem espaco);

}

}

}

R

Tem um código melhor ainda pra você, a propria string tem um metodo que valida isso > placa.contains(" ") //placa e a variavel string é só colocar dentro de um if e pronto.

Fui.

InicianteJavaHenriqu

Usem a tag code

:thumbup:

Criado 5 de maio de 2012
Ultima resposta 5 de mai. de 2012
Respostas 8
Participantes 3