Vergleich schlägt fehl

Status
Nicht offen für weitere Antworten.

Angel4585

Bekanntes Mitglied
Hallo,

ich habe diese Zeile:
Code:
        if(node.getData().getId().intValue()==aID.intValue())
Ich gebe mir vorher und nachher auch die jeweiligen Werte aus. Beide liefern "2", aber mein Programm überspringt den Teil trotzdem.
Also ich bin mit dem Debugger auf dieser Zeile, er kommt da an, bringt aber bei dem Vergleich false obwohl die Zahlen gleich sind. hat jemand von euch eine Idee was ich da noch falsch amchen könnte?
 

tfa

Top Contributor
Von welchen Typ sind denn die Rückgabewerte der intValue()-Funktionen? Integer? int?
 

Angel4585

Bekanntes Mitglied
aID und getId() sind jeweils Integer.
Ich dachte das die evtl die Addressen vergleichen, deswegen intValue() das ist dann int
 

tfa

Top Contributor
Da hast Du richtig gedacht. (int)2 sollte auf jeden Fall == (int)2 sein. Da muss irgendwo anders ein Fehler sein.
 
S

SlaterB

Gast
narrensicher:
Code:
int aa = a.intValue();
itn bb = b.intValue();
System.out.println("a.intValue() ist "+aa+", b.intValue() ist "+bb +", gleich?: "+(aa == bb));
 

Angel4585

Bekanntes Mitglied
ok jetzt bin ich baff..

ich hab ne Methode geschrieben die diese Idiotensichere Variante macht und das Programm springt da nichtmal rein, einfach drüber...
der Aufruf geht:

if(isEqual(zahl1,zahl2))

er springt auf diese Zeile drauf aber geht nicht in die Methode rein..
 
S

SlaterB

Gast
du bist ja ein Spassvogel:
Abfrage a müsste true sein, du weißt von nix, erfährst hier die narrensichere Lösung, fährst nun im Programm schwere (Prüf-) Geschütze auf,
merkst, dass es nun an einer anderen Abfrage b liegt und was tust du?
statt genau auf die gleiche Weise den Vergleich mit System.out.println zu prüfen fragst wieder im Forum..

was soll man denn hier sagen außer wieder genau das gleiche:
der Vergleich ist false weil zahl1 nicht equals zahl2 ist (anderer Inhalt oder schlechte equals-Operation)
zu testen mit System.out.println................................
 

Angel4585

Bekanntes Mitglied
also ich hab vor der Abfrage mal ein System.err.println(zahl1==zahl2); gemacht und bekomme true. also er müsste da reinspringen.. tut er aber nicht
 
M

maki

Gast
Du weisst aber schon, was der Unterschied zwischen == und equals ist, oder???
 
S

SlaterB

Gast
warum lautet die Abfrage dann nicht zahl1==zahl2 sondern isEqual(zahl1,zahl2)?
hast du isEqual(zahl1,zahl2) mal debuggt?
ändern sich die Zahlen auch nicht zwischendurch oder das Verhalten der Operation?

da muss ich dir schon wieder den narrensicheren Code hinschreiben ;)
Code:
boolean equal = isEqual(zahl1,zahl2);
System.out.println (zahl1.. zahl.. equal..);
if(equal) {
..
}
unbreakable
 

Angel4585

Bekanntes Mitglied
habt ihr mal gelesen was ich oben geschrieben hab?

isEqual ist meine eigene Methode:

Code:
public Boolean isEqual(Integer zahl1, Integer zahl2){
int a = zahl1.intValue();
int b = zahl2.intValue();
return (a==b);
}
Das Ergebnis wenn ich das einfach so aufrufe ist korrekt, es bringt true wenn die Zahlen gleich sind und False wenn sie unterschiedlich sind.

Das Problem ist ein anderes:
Code:
if(node == null){
..//Irgendwas tun
}else if(isEqual(node.zahl1,node.zahl2)){
..//was anderes tun
}

Das Problem ist jetzt:
Der Debugger springt zwar visuell auf die Zeile mit dem isEqual(), er geht aber nicht in die Methode rein, sondern überspringt sie.
Ich hatte einen Haltepunkt in der Methode drin, in der ersten Zeile, aber den erreicht er nie.
Genauso wird es wohl bei dem Vergleich vom Anfang auch laufen. er kommt nie rein weil er diese Zeile einfach überspringt.
Also visuell ist der Debugger drauf, aber im Hintergrund scheint er einen komplett anderen Code zu debuggen
 
S

SlaterB

Gast
um zu testen, ob der korrekte Code vorliegt,
einfach ein System.out.println("Version 17c"); reinhauen,
oder für den Debugger eine Dummy-Variable mit Wert 59 definieren,
die muss dann ja irgendwo angezeigt werden
 

Angel4585

Bekanntes Mitglied
komisch also das wird angezeigt.. aber er springt trotzdem über die Zeile drüber...

node ist nicht null, ich sehe ja das der Debugger auf der Zeile steht mit dem isEqual.. er geht nur nicht da rein..
 
S

SlaterB

Gast
kennst du dich denn mit Debuggern aus?
zumindest in Eclipse gibt es verschiedene Buttons, 'Step over' und 'Step into'
 

Angel4585

Bekanntes Mitglied
die gibts in NetBeans auch und ich weis was sie bedeutet.. und selbst wenn.. ich habe in der Methode einen Haltepunkt, also selbst wenn ich den Aufruf überspringen würde würde ich rein auf diesen punkt kommen.
Ich programmiere jetzt seit 5 Jahren, 4 Jahre davon Delphi und da hab ich auch viel mit Debugger gearbeitet. Ich weis schon was ich tu nur versteh ich nich was NetBeans oder was auch immer an dieser Stelle tut..
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Vergleich von Strings schlägt fehl.. Java Basics - Anfänger-Themen 5
T Input/Output String-Vergleich schlägt fehl Java Basics - Anfänger-Themen 7
heinrich172 Methoden Trotz gleichem Element stimmt Vergleich nicht? Java Basics - Anfänger-Themen 7
U Interface als PAramter (Vergleich) und ein Error Java Basics - Anfänger-Themen 9
K Erste Schritte Wie schnell ist LinkedHashMap im Vergleich zur ArrayList, wenn alle Entries durchlaufen werden? Java Basics - Anfänger-Themen 47
B Performance-Vergleich mit C++ Java Basics - Anfänger-Themen 55
K Rekursiver Vergleich von Textmuster und Text Java Basics - Anfänger-Themen 2
Zeppi Vergleich von Array-Inhalten Java Basics - Anfänger-Themen 14
Lena_2611 Vergleich von Array1 Index mit Array2 Wert und erzeugen eines neues Arrays Java Basics - Anfänger-Themen 8
B Date - Vergleich (equals / after) ? Java Basics - Anfänger-Themen 3
J Problem beim vergleich von zwei Integer Java Basics - Anfänger-Themen 3
W Vergleich von DatenPaketen Java Basics - Anfänger-Themen 6
B String vergleich Java Basics - Anfänger-Themen 3
C Probleme mit String-Vergleich Java Basics - Anfänger-Themen 4
K File-Name Vergleich Java Basics - Anfänger-Themen 2
V Fließkommazahlen Vergleich Java Basics - Anfänger-Themen 7
J Vergleich Java Basics - Anfänger-Themen 2
S Vergleich zweier ArrayLists mit Ausgabe an dritte ArrayList Java Basics - Anfänger-Themen 5
T Vergleich und Ausgabe von Zahlen Java Basics - Anfänger-Themen 1
G Klassen Vergleich zweier Klassen Java Basics - Anfänger-Themen 23
J Fehler bei Vergleich auf den grössten Wert Java Basics - Anfänger-Themen 2
A Do-While Schleife; int vergleich Java Basics - Anfänger-Themen 2
G Wieviel kostet der Zugriff auf Objektattribute im Vergleich zur Erstellung von vars in Methode? Java Basics - Anfänger-Themen 11
W Konvertierung und Vergleich unterschiedlicher Zeitformate Java Basics - Anfänger-Themen 11
L Vergleich zweier Variablen, mit Abweichung Java Basics - Anfänger-Themen 3
N Methoden Methode zum Vergleich zweier Geburtstage Java Basics - Anfänger-Themen 5
W Vergleich mit If-Abfrage nur für Zahlen bis 07 möglich - Warum? Java Basics - Anfänger-Themen 7
M String-Vergleich und NullPointerException Java Basics - Anfänger-Themen 4
M Vergleich zweier Array Stellen mit equals/NullpointerException Java Basics - Anfänger-Themen 9
L PW-Vergleich Java Basics - Anfänger-Themen 5
N Vergleich zweier String Arrays scheitert Java Basics - Anfänger-Themen 3
S Vergleich von Listen Java Basics - Anfänger-Themen 6
J vergleich von arrays (benötige Hilfe/Denkanstoß) Java Basics - Anfänger-Themen 16
V Einfacher vergleich von Arrays geht schief Java Basics - Anfänger-Themen 2
T Operatoren Multiplikation nur mit Addition, Subtraktion und Vergleich Java Basics - Anfänger-Themen 29
N Methoden Array vergleich funzt nicht Java Basics - Anfänger-Themen 8
B Char-Vergleich Sonderzeichen Java Basics - Anfänger-Themen 6
S Vergleichsmethode zum Objekt-Vergleich mit < und > Java Basics - Anfänger-Themen 4
F Problem bei Vergleich Java Basics - Anfänger-Themen 3
S File vergleich - Junit Java Basics - Anfänger-Themen 6
P String-Vergleich Java Basics - Anfänger-Themen 3
S Multiplikation durch Addition, Subtraktion und Vergleich von Zahlen Java Basics - Anfänger-Themen 14
W Vergleich ob Buchstabe in einem Wort enthalten ist Java Basics - Anfänger-Themen 3
C String Objekte Vergleich je nach Instanzierung unterschiedlich!!?!! Java Basics - Anfänger-Themen 4
R String-Vergleich Java Basics - Anfänger-Themen 15
C Variablen Vergleich funktioniert nicht Java Basics - Anfänger-Themen 11
J Erste Schritte Vergleich der String-Objekte Java Basics - Anfänger-Themen 17
B Zwei verschiedene Daten vergleich Java Basics - Anfänger-Themen 2
A Variablen Vergleich Java Basics - Anfänger-Themen 5
P Erste Schritte vergleich substring und string Java Basics - Anfänger-Themen 4
G Date - Calender | "Vergleich" Java Basics - Anfänger-Themen 3
M Vergleich mit Toleranz Java Basics - Anfänger-Themen 7
B Objekt Vergleich - Unterschiede ausgeben Java Basics - Anfänger-Themen 4
P Vergleich mit Variablen Java Basics - Anfänger-Themen 6
Y Java Programm URL und String Vergleich! Java Basics - Anfänger-Themen 4
K Vergleich von variable und array Java Basics - Anfänger-Themen 9
L vergleich zweier texte Java Basics - Anfänger-Themen 18
H Beim Vergleich/Sortieren mehr als zwei Objekte berücksichtigen Java Basics - Anfänger-Themen 14
B Vergleich zweier Objekte durch "Hashfunktion" Java Basics - Anfänger-Themen 12
P Vergleich von Enums Java Basics - Anfänger-Themen 4
S String Vergleich funktioniert nicht Java Basics - Anfänger-Themen 3
A String-Vergleich geht nicht Java Basics - Anfänger-Themen 2
U Automatenprüfung in Java implementieren — String Vergleich klappt nicht Java Basics - Anfänger-Themen 40
F Methoden Vergleich von int Zahlen Java Basics - Anfänger-Themen 16
F Login Passwort-Vergleich Java Basics - Anfänger-Themen 12
N Vergleich per equals Java Basics - Anfänger-Themen 5
Z XML Vergleich Java Basics - Anfänger-Themen 20
S Herunterladen von Dateien mit Vergleich Java Basics - Anfänger-Themen 6
L Problem String-Vergleich Java Basics - Anfänger-Themen 2
E Objekte-Vergleich Java Basics - Anfänger-Themen 6
Y Datentypen String vergleich Java Basics - Anfänger-Themen 3
R Vergleich von Objekten anhand variierender Kriterien Java Basics - Anfänger-Themen 5
K Datentypen Arrays in Java - Adress-Arithmetik im Vergleich zu Listen Java Basics - Anfänger-Themen 4
S equals vergleich Java Basics - Anfänger-Themen 10
A Datentypen instanceof VS Class - Vergleich Java Basics - Anfänger-Themen 4
M Char vergleich zu Int Java Basics - Anfänger-Themen 10
G Wann ist ein == Vergleich bei Gleitkommazahlen fahrlässig? Java Basics - Anfänger-Themen 8
algorismi Ausführungszeit Vergleich == true Java Basics - Anfänger-Themen 8
J Performance Vergleich von if-Abfragen mit mehreren Bedingungen Java Basics - Anfänger-Themen 9
T Zwei listen vergleich und selbige löschen Java Basics - Anfänger-Themen 4
T Vergleich mit Typecasts Java Basics - Anfänger-Themen 3
Screen Eine Frage zu moueMove in applets und deren Vergleich Java Basics - Anfänger-Themen 11
M Vergleich Float-, Doublewert Java Basics - Anfänger-Themen 10
G Vergleich zweier Arrays Java Basics - Anfänger-Themen 8
U Methode Vergleich von 2 Arrays Java Basics - Anfänger-Themen 5
S String Vergleich mit Passwort geht nur bei Zahlen ? Java Basics - Anfänger-Themen 7
G Vergleich klappt nicht Java Basics - Anfänger-Themen 3
T Vergleich von generischen Typen Java Basics - Anfänger-Themen 2
C DB Vergleich mit Eingabe Java Basics - Anfänger-Themen 5
G Vergleich großer Basen/Exponenten? Java Basics - Anfänger-Themen 3
F Vergleich von Objekten Java Basics - Anfänger-Themen 2
N Vergleich findet nicht statt. Java Basics - Anfänger-Themen 13
M 2 Fragen: Vergleich, aber wie? Was passiert in diesem Teil? Java Basics - Anfänger-Themen 18
G Vergleich bei MD5-Verschlüsselung Java Basics - Anfänger-Themen 3
R +1 Vergleich Java Basics - Anfänger-Themen 3
E Char vergleich Java Basics - Anfänger-Themen 7
loadbrain Array vergleich mit 2 for schleifen Java Basics - Anfänger-Themen 6
D Vergleich von ListenElementen Java Basics - Anfänger-Themen 2
M Problem bei einem Vergleich Java Basics - Anfänger-Themen 6
G Vergleich Eingabe mit Wert in vorhandenem Array Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben