[ Resolvido ] - Ddúvida com comparação de char e String
3 respostas
J
jefers0n
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.
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
jefers0n
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.