Objekt.equals(null) == true

RoteSocke hat gesagt.:
Läuft die Überprüfung mit:
Code:
administrator != null
wie oben, oder mit:
Code:
administrator.equals(null)
wie in der Überschrift?

Im zweiten Fall gibt es eine NullPointerException, falls administrator null ist, falls nicht, funktioniert der Code.

Gruß
Socke

Du willst auf die Methode equals( ) des Objekts administrator zugreifen obwohl dieses NULL ist und wunderst dich, dass du eine Null Pointer Exception kriegst ?
 
teppi hat gesagt.:
Du willst auf die Methode equals( ) des Objekts administrator zugreifen obwohl dieses NULL ist und wunderst dich, dass du eine Null Pointer Exception kriegst ?
Ich wundere mich garnicht, ich wollte nur genauer wissen, wie der Code des Fragestellers aussieht. (Und ihn evtl. auf dieses Problem hinweisen)
Dass der Zugriff auf eine Methode beim Objekt "null" fehlschlagen muss, ist mir voellig klar.
 
Sorry, ich hatte gestern abend ganz schön einen in der Krone. Ich hatte schon befürchtet, dass ich da Stuß schreibe. Nix für ungut :) ..
 
Thomas Darimont hat gesagt.:
hallo!

Code:
 try{
   if(fif.getAdmin(Benutzername).toString().length > 1){
 	String admin = new String("admin");
 	return admin;
   }
   else{
 	return null;
   }
 }
 catch(NullPointerException e){
   return null;
 }

Wenn man solche Konstrukte baut läuft irgendwas ganz gewaltig schief...
Meine Empfehlung wäre: Zurück ans Reißbrett

Gruss Tom

Ich weiss daß dies nicht gerade ne Muster Lösung ist. Aber wenn man auf einen Null Wert spekuliert darf man meines Erachtens auch die NullPointerException zur Behandlung dieses Wertes nutzen. Am besten wäre, wenn er seinen Vorgängercode so schreiben könnte, das er nie einen Null-Wert erhält, denn das finde ich "Zurück ans Reisbrett"... Mir wäre lieber er implementiert ne Methode die da heisst.
Code:
boolean person = isAdmin(Benutzer);
 
Zurück