NetBeans 6.5 problema di debug
-
20-09-2019 - |
Domanda
I sono il debug le seguenti righe di codice
if (var.getvar2() != var3) {
var4.add(var);
} else {
isNeeded= true;
if (incomingPublishedDate.compare(modifiedDate) < 0) {
importNeeded = true;
} else {
var4.add(var);
}
}
Qui var.getvar2()
e var3
sono di tipo Long
.
Durante il debug, quando la condizione va come
10000 != 10000
il if
dovrebbe valutare a false
. Ma dal primo if
, il prossimo Step Over va a
var4.add(var);
e il passo successivo corso va a var4.add(var);
Questo è un bug Netbeans? O è con il confronto Long
.
Sto usando IDE Netbeans 6.5
Soluzione
Non è possibile confrontare gli oggetti per valore. Tale confronto sarebbe solo vero se i due riferimenti a confronto si riferiscono allo stesso oggetto. Invece utilizzare:
if (! var.getvar2().equals(var3)) {
...
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow