Estou usando o if em uma classe, mas estou tendo dificuldades.
O código é assim:
if((nome==“char”) || (nome==“String”)){…}
Uma das duas condições deve ser verdadeira. Eu usei o operador || (que é o que utilizo em outras linguagens), mas quando mando compilar, dá erro.
O quê devo utilizar no lugar do || ?
Provavelmente o item “nome” deve ser do tipo String.
Quando vc tenta comparar nome==“String”, por exemplo, vc está tentando comparar um objeto chamado nome do tipo String com um objeto também do tipo String.
O ocorre que o Hash de um objeto não é igual ao outro (porque não são o mesmo objeto) e então ao fazer obj1==obj2 dá false.
Hmmm… entendeu?
mesmo qdo vc fizer assim “uma string” ela é um objeto do tipo String internamente.
então pra comparala com outra vc faria “uma string”.equals(“outra string”) …
sacou?
[]'s
D
Dharis
Mas será que isso é motivo para não compilar, pessoal?
“marianefg”:
if((nome=="char") || (nome=="String")){...}
Uma das duas condições deve ser verdadeira. Eu usei o operador || (que é o que utilizo em outras linguagens), mas quando mando compilar, dá erro.
O quê devo utilizar no lugar do || ?
Alguém pode me ajudar?
Para ajudar, fica mais fácil mostrar a mensagem de erro do compilador e talvez um trecho maior, um pouco mais de código (o erro pode ser da linha anterior, esquecimento da declaração da variável nome, etc.)