[ Resolvido ] - Ddúvida com comparação de char e String

3 respostas
J

Boa tarde,

Estou com uma dúvida em comparação de char e String, por exemplo se eu comparar duas string assim:

String x = "café", y = "leite"; if (y > x) return true; else return false;
Sei que retornará true, pois ‘l’ é maior que ‘c’ no alfabeto, mas nesta comparação abaixo, eu não entendo a lógica, o que é verdadeiro e falso neste if?

... if ('A' <= ch && ch <= 'Z') ...

a variável “ch” acima esta recebendo letras de uma String.

Grato,

3 Respostas

renamed

Cara, se vc comparar suas Strings assim, o programa nem compilará… usa o equals

if (y.equals(x))
renamed

Sobre o que você perguntou acima…

if ('A' <= ch && ch <= 'Z')

Os códigos correspondentes às letras ‘A’, ‘B’, ‘C’, … estão em sequencia na tabela ASCII, sendo assim, você está testando se esse caractere (ch) da string, é uma das letras maiúsculas do alfabeto…

ok?

J

renamed:
Sobre o que você perguntou acima…

if ('A' <= ch && ch <= 'Z')

Os códigos correspondentes às letras ‘A’, ‘B’, ‘C’, … estão em sequencia na tabela ASCII, sendo assim, você está testando se esse caractere (ch) da string, é uma das letras maiúsculas do alfabeto…

ok?

Ta certocara, então no meu caso é apenas pra pegar da String o que for letra(pois todas ja estão maiúsculas), e ignorar espaços em branco e ponto…

O exemplo que dei não vou usar, foi apenas pra explicar e agora que tu falou me dei conta que String usa-se .equals, compareTo… Muito obrigado.

Fui, até +.

Criado 4 de dezembro de 2009
Ultima resposta 4 de dez. de 2009
Respostas 3
Participantes 2