Olá,
Estou fazendo um programa e peço uma resposta em String ( S ou N ), como faço para comparar, pois tentei o código abaixo e não deu certo…
if (var == "S") ...
Olá,
Estou fazendo um programa e peço uma resposta em String ( S ou N ), como faço para comparar, pois tentei o código abaixo e não deu certo…
if (var == "S") ...
String var = “N”;
if (var.equals(“N”)) {
System.out.println(“Sim! var é igual à N”);
}
Olá,Estou fazendo um programa e peço uma resposta em String ( S ou N ), como faço para comparar, pois tentei o código abaixo e não deu certo...
if (var == "S") ...
tente usar:
if(var.equals("S"))
vc deve estar se perguntando, qual a diferença entre o operador == e o método equals()...
Exemplo:
public class Teste
{
public static void mais(String args[])
{
int a = 10;
int b = 10;
System.out.println("a == b é " + (a == b));
Integer ia = new Integer(10);
Integer ib = new Integer(10);
System.out.println("ia == ib é " + (ia == ib));
}
}
a execução dessa classe gera a seguinte saída:
a == b é true ia == ib é false
as variáveis a e b são do tipo int, ou seja são tipos primitivos e não possuem nenhum objeto associado a elas...
já as variáveis ia e ib são referências de objeto Integer
mas ambas retornam 10 !?
as variáveis de tipo primitivo a e b, possuem o valor 10... as referências de objeto ia e ib, são na realidade referências a dois objetos Integer diferentes que também possuem o valor 10...
portanto os valores de ia e ib não são 10, mas sim valores exclusivos que representam os dois objetos...o operador == testa a igualdade...
para testar valores referênciados use o método equals(), que testa o valor, igualdade ou semântica!!!
:wink:
Pesquise sobre o método charAt(), ele dá a localização exata do caracter na string em questão, por exemplo:
…
String nome;
nome = new String(“Eu mesmo”);
nome.charAt(1);
…
nesse caso você estará se referindo à letra u, lembrando que as strings começam em 0.