if não entra  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
davidhc
JavaEvangelist

Membro desde: 26/07/2006 09:11:47
Mensagens: 359
Offline



Alguem sabe pq não entra no if?

talvez esteja tão vazio =o
[Email]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Repetindo pela enésima vez:

Para comparar duas strings, use equals ou equalsIgnoreCase.
[WWW]
Mantu
GUJ Ranger
[Avatar]

Membro desde: 27/03/2006 09:05:16
Mensagens: 961
Localização: São Paulo/SP
Offline

http://www.guj.com.br/posts/list/52376.java

[]'s
Mantu

"Vou lançar o 'Caguei'. Caguei para o 'Cansei'". Luciano Camargo
"O povo votou contra a opinião pública". Um certo jornalão da mídia golpista, a respeito da vitória de um certo cadidato a presidente do Brasil.

[Email] [MSN] [ICQ]
davidhc
JavaEvangelist

Membro desde: 26/07/2006 09:11:47
Mensagens: 359
Offline

thingol wrote:Repetindo pela enésima vez:

Para comparar duas strings, use equals ou equalsIgnoreCase.


haha eu acabei de me lembrar depois q postei =o haha

vlw
[Email]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Acho, em minha opinião, que o Gosling comeu bola quando definiu a classe String e redefiniu apenas o operador "+".
Ele deveria ter redefinido "==", "!=", "<", "<=", ">", ">=" também.
Uma boa parte dos problemas com os iniciantes em Java é que o "==" não funciona direito com Strings.
[WWW]
shison
JavaBaby
[Avatar]

Membro desde: 28/12/2006 01:08:46
Mensagens: 82
Offline

Aproveitando o assunto..

No java tem como fazer essa redefinição ao definir uma classe?
Tipo no C++ onde eu conheço como sobrecarga de operadores.

----
Hudson Pena Magalhães
[MSN]
thiago.correa
GUJ Master
[Avatar]

Membro desde: 26/03/2006 18:54:30
Mensagens: 1861
Offline

Java não possui sobrecarga de operadores

---
"Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!"
Thiago
[MSN]
kaabah
Java Ninja
[Avatar]

Membro desde: 23/05/2006 09:56:33
Mensagens: 260
Localização: Vitória-ES
Offline

Acho, em minha opinião, que o Gosling comeu bola quando definiu a classe String e redefiniu apenas o operador "+".


Talvez isso para mostrar a coerência mostrando que String é um Object e possui as características do tal. Mas concordo plenamente com você thingol. Já que a classe String é cheia de "não me toque" =) bem que ele poderia ter feito a redefinição dos operadores mesmo.

Boa parte desse tipo problema seria resolvido em bem menos tempo.

[]´s

-----
Sun Certified Java Programmer

"O que eu espero senhores, é que depois de um razoável período de discussão, todo mundo concorde comigo". (Winston Churchill)
Kknd
JavaEvangelist
[Avatar]

Membro desde: 13/10/2006 10:54:18
Mensagens: 338
Offline

thingol wrote:Acho, em minha opinião, que o Gosling comeu bola quando definiu a classe String e redefiniu apenas o operador "+".
Ele deveria ter redefinido "==", "!=", "<", "<=", ">", ">=" também.
Uma boa parte dos problemas com os iniciantes em Java é que o "==" não funciona direito com Strings.


Na verdade isso serve para qualquer objeto, pois o seguinte código:



Imprime "Diferentes" também. Eu até gosto do padrão do Java de que == significa o mesmo objeto, e não conteúdos iguais!
[WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Eu concordo com o Thingol.

Especialmente pq String é uma classe que mais se parece com um tipo primitivo.

Para um iniciante é muito difícil entender que ele pode fazer:
String x = "Nova String"; (No lugar de String x= new String("x");

E:

String y = x + x; (No lugar de y = x.concat(x));

Mas não pode fazer o == para comparação...

Fora o fato de que comparar com o == dá certo às vezes, por causa do pool interno do java (não necessariamente por causa do conteúdo da String)... Aí fica ainda mais difícil de explicar porque daquela última vez o exercício que ele fez passou e dessa vez não...
[WWW]
bzy
JavaGuru
[Avatar]

Membro desde: 23/08/2006 19:34:00
Mensagens: 215
Localização: São Paulo - Guarulhos
Offline

Sei que já é assunto antigo mas...

Pior é quando vc pode fazer assim:
IF( a = b) THEN ....

Acho legal que == é para objeto e equals conteúdo. Poderia ser == para conteúdo e === para objeto também, desde que ficasse separado = de == de === de equals.

SCJP - Sun Certified Java Programmer
http://meumundojava.blogspot.com/
Memento mori.
[WWW] [ICQ]
nbluis
GUJ Master
[Avatar]

Membro desde: 27/05/2006 01:31:51
Mensagens: 1531
Localização: Porto Alegre - RS
Offline

Acho natural...
Imaginem se fosse o caso do "==" para comparação de duas Strings...
Dai teria um monte de gente reclamando que a classe String não suporte comparação de dois objetos....

Sei se so to colocando lenha na fogueira.. mas java na sua essência tende a fazer com que tenha suporte a tudo, mesmo que isso complique um pouco

E ainda, temos que dar graças a deus de não serem char[].

Até mais .....

Luis Eduardo Bohrer

Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
[WWW]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team