Problema If Else

4 respostas
R

Eai pessoal, estou com um pequeno problema no meu programa. Exemplo:

boolean isRodando = false;
int tmp = 0;

if(isRodando == false){
  tmp=+10;
  isRodando = true;
}
else if(isRodando == false){
  tmp=+20;
}

A logica deste programa eh caso o marcador "isRodando" for falso, executar a primeira opçao, caso o marcador for verdadeiro, rodar a segunda opçao. Ate ai tudo bem, mas o problema eh que no meu programa o "else if" executa duas vezes, eu keybindei ele com o SWT Keyboard Hook. Alguem tem alguma dica ou ideia de como posso resolver o problema?

4 Respostas

davidbuzatto

Oloco, você não sstá conseguindo ver o seu erro?
E outra, para que else if se existem apenas duas condições para a variável que é um boolean?

[]'s

leocantanhede

Tenta assim:

boolean isRodando = false;   
int tmp = 0;   
  
if(!isRodando) { 
  
  tmp=+10;   
  isRodando = true;
   
} else {   
  
  tmp=+20;

}
D

é como o amigo ali acima disse nao precisa de else if qd é apenas duas condições ou vc usa if else
ou if e if

quando apenas duas condições!

R

Obrigado pelo feedback galera!

Seguinte, a logica original era com if e else (sem else if) mas dava o mesmo problema…

O grande estress desse erro eh que essa logica ela manda numero por parametro, e a outra classe recebe eles duplicados, mas soh depois da segunda vez que esse metodo for ativado.

Exemplo:

*primeira chamada do metodo
-> isRodando = “true”
-> tmp = 10

*segunda chamada do metodo
->isRodando = “true”
->tmp = 50 (10(estado anterior) + 2x 20(bug aqui))

Mas soh pra relembrar, eu estou usando KeyboardHook do SWT, nao sei se isso influencia em algo…

Criado 27 de novembro de 2011
Ultima resposta 27 de nov. de 2011
Respostas 4
Participantes 4