j2me não aceita bloco de condições

Gente pode ser estranho, eu achei muuuiiito estranho

na minha aplicação em qualquer parte do código não ta aceitando bloco de condições envolvendo variaveis ele da o segunite erro:

ALERT: Error verifying class <NomeDaClasse>

isso acontece com if, switch, for,…os q testei

tipo …

quando eu coloco

if("string1"=="string2"){ &lt;bloco de comandos&gt; }

da certo!.. pq eu to comparando duas constantes strings

mas quando eu envolvo variaveis da akele erro q mencionei… o emulador starta e fecha na mesma hora

Exemplo:

[code]String var1 = “banana”;

if(“banana”==var1){
<bloco de comandos>
}[/code]

enfim … sinceramente naum sei o q fazer …

e da o mesmo erro quando quando eu tento inserir imagem tbm

baixei o midp 2.0
e o cldc 1.0

e baixei tbm o wireless toolkit 2.5 e ta dando a mesma coisa …

se me ajudarem com algo eu agradeço muito…

guripunk, não trabalho com JME logo não posso te dá certeza… mas, se você comparar as duas Strings utilizando o método equals não dá problema? correto?

Bom, posso estar inteiramente enganado, todavia, em todas as linguagens que conheço a comparação se faz posicionando a variável à esquerda do conteúdo (a string “banana”) que se deseja comparar. No Java também não seria assim?
Não custa experimentar, néh?!

Pode não ter ficado muito claro meu post anterior…
O que quero dizer é que: não deveria ser o contrário? if (<variável> == “banana”)…
Desculpem a falha técnica!

Desta forma, no java, você está comparando se a variavel1 é a mesma instancia de “banana” o que nunca será verdadeiro pois “banana” está sendo instanciado na hora.
Mas o problema não deve ser com a comparação.

tente fazer if(“banana”.equals(variavel1))

Para comparar variáveis do tipo String tem que usar o equals:
if( variavel.equals(“banana”) ){}

Da outra forma, em variáveis do tipo String, você so pode utilizar para verificar se a variável é null:
if( variavel == null ){}

[quote=JavaES]Para comparar variáveis do tipo String tem que usar o equals:
if( variavel.equals(“banana”) ){}

Da outra forma, em variáveis do tipo String, você so pode utilizar para verificar se a variável é null:
if( variavel == null ){}
[/quote]

Oops! Deixe-me aprender um pouco com o Amigo.
Quer dizer que o comportamento do Java, nas estruturas de decisão, é inteiramente diferente de, praticamente, quase todas as demais linguagens?
Isto se aplica também às estruturas do tipo WHILE, FOR, SWITCH?
Muito interessante…
Mas veja, no caso do NULL, seria possível inverter as posições no Java? Ou seja, “if(null == variavel){}” também poderia ser utilizado?
Vivendo e aprendendo…
Valeu bastante seu post.
Abs.

Ordem não importa.
Não é diferente das outras não. Para comparaçcão de tipos PRIMITIVOS vc usa == como todas as outras.
String é uma classe, não é primitiva.

Como eu disse no post anterior:
Desta forma, no java, você está comparando se a variavel1 é a mesma instancia de “banana” o que nunca será verdadeiro pois “banana” está sendo instanciado na hora.

Comparar objetos com == testa se ambas as variáveis REFEREM-SE à mesma instancia.

abraço

Como o clv disse, apenas reforçando, no Java, com tipos primitivos você pode fazer comparações como nas outras linguegens utilizando o ==. Porém, em java o tipo String não é primitivo, é uma classe, e o método .equals() é o método utilizado para fazer comparações.