2011-11-13 8 views
5

Nel codice seguente l'istruzione if viene valutata su true ma è possibile vedere il suo false.
Ovviamente c'è una logica qui per spiegare questo ma non riesco a ricordarlo.
2 filmati che mostrano la fenomenologia:
http://www.youtube.com/watch?v=DFcRfPErfik
http://www.youtube.com/watch?v=NEC04-kLQBEjava perché il valore è lungo se l'istruzione è stata convalidata errata

La linea "holderCompleated.textInfo.setT ..." si svolgerà anche fare diffHours == 1
un'occhiata alla foto, diffHours = 1 ed Expression finestre mostrano false

enter image description here

un estivo per questa domanda potrebbe essere:
(Non abbiate timore di chiedere anche il più sciocco la questione :))

Ecco una foto quando entro nella if statment

enter image description here

+0

Sei sicuro che l'istruzione if sarà presa * su questa iterazione *? –

+0

Quindi stai dicendo "titolareCompleated ... "è eseguito anche se il debugger mostra "diffHours> 1" se falso? – foowtf

+0

sì, esattamente quello che succede, guarda la foto, ne aggiunge un'altra. a quello cattivo non è possibile aggiungere un breve film invece di immagini per mostrarlo. E sì, ho fatto un progetto Clean in eclissi per escludere le incoerenze – Erik

risposta

3

qualcosa di strano sta succedendo. Aggiungendo il log.d (TAG, ... all'interno dell'istruzione if e il debugger lo scavalca) Avere anche un Log.d (TAG, .. appena prima dell'istruzione if e quello è ok

forse il clean-up non ha funzionato e si sta eseguendo qualche vecchio codice. forse si tenta di riavviare Eclipse? e poi magari eliminare e reimportare alcuni progetti?

Questo spiegherebbe anche il motivo per cui si vede il debugger che inserisce l'istruzione if: non lo è! Il codice corrente non è sincronizzato con il codice sorgente

+1

Sì, molto probabilmente il programma ha fatto non ricompilare e stai eseguendo il vecchio codice. –

+0

ha appena riavviato il computer e chiude il progetto aperto e si è pulito. La stessa cosa succede Anche il log.d (TAG .. all'interno dell'istruzione if viene eseguito quando eseguo il debug ma nessuna voce in LogCat. Penso di dover svuotare qualche cache in qualche posto perché il debugger sta avendo una brutta giornata. Versione Eclipse: Indigo Service Release 1 Build id: 20110916-0149 – Erik

+0

Hai provato a pulire il tuo codice (Progetto -> Pulisci)? – deterb

Problemi correlati