Es gibt eine Möglichkeit, dass dies eine doppelte Frage sein kann. Ich initialisiere eine String-Variable zu null.Ich kann es oder nicht aktualisieren es mit einem Wert. Jetzt möchte ich überprüfen, ob diese Variable ungleich Null ist und was auch immer ich versuche, bekomme ich eine Null-Zeiger-Ausnahme.Ich kann es mir nicht leisten werfen Nullpointer Ausnahme, da es costly.Is es eine Abhilfe ist, die efficient.TIA istNullpointer Ausnahme
Antwort
Wenn Sie
verwendenif (x == null)
Sie nicht eine NullPointerException
bekommen.
Ich vermute, Sie tun:
if (x.y == null)
, die werfen, weil x
null ist, nicht weil x.y
null ist.
Wenn dies nicht erklärt wird, geben Sie bitte den Code ein, den Sie verwenden, um auf Nichtigkeit zu prüfen.
Sie haben es richtig. Ich habe die Variable y in X-Klasse als null deklariert ist nicht null. Es wird keine Ausnahme für Nicht-Null-Werte ausgelöst. –
Wenn 'x' nicht null ist, dann wird' if (xy == null) 'keine' NullPointerException' werfen. –
X kann nicht null sein, weil ich X.z an eine andere Funktion als Parameter übergebe, die gerade vor dieser Zeile steht, die keine Nullzeigerausnahme wirft –
String ist unveränderlich
@Test(expected = NullPointerException.class)
public void testStringEqualsNull() {
String s = null;
s.equals(null);
}
@Test
public void testStringEqualsNull2() {
String s = null;
TestCase.assertTrue(s == null);
}
mit Java 1.4 keine Assertion oder Anmerkungen –
Emulieren Sie es dann mit "wenn (....) neue RuntimeException werfen (" Assert Fehler .... "); –
Ich denke, man so etwas, tun
String s = null;
if (s.equals(null))
Sie entweder überprüfen null wie diese
if (s == null)
Ein besserer Ansatz ist zu ignorieren die Null und nur auf den erwarteten Wert wie folgt überprüfen,
if ("Expected value".equals(s))
In diesem Fall ist das Ergebnis immer falsch, wenn s null ist.
Ich tippte das gleiche! –
Ich vergleiche s == Nur Null. Der erwartete Wert ist alles andere als null –
Ich vergleiche s == null nur
können Sie den Code-Schnipsel zeigen, dass Sie s == null geschrieben haben, wird nie ein NPE
Sie haben Recht ... Der Grund für die Ausnahme war, dass ich ursprünglich s! = null || s verglichen habe.gleich ("") und der oder Teil warf nullpointerException.Wie auch immer ich das entfernt, aber vergessen, den Server neu zu starten. Danke für Ihre Antworten –
- 1. jCombobox NullPointer Ausnahme
- 2. Nullpointer-Ausnahme bei com.sun.faces.config.InitFacesContext.cleanupInitMaps
- 3. Clojure Nullpointer Ausnahme
- 4. ListView Adapter NullPointer Ausnahme
- 5. Schnittstelle Mock gevis nullpointer Ausnahme
- 6. Java Nullpointer Ausnahme nach Nullprüfung
- 7. NullPointer-Ausnahme - JSF-Ereignisbehandlung (ValueChangeListener)
- 8. DialogFragment-Argument und Nullpointer-Ausnahme
- 9. Android Stringblock.get NullPointer Ausnahme auf Lollipop
- 10. android textview settext show nullpointer ausnahme
- 11. Warum erhalte ich diese NullPointer-Ausnahme?
- 12. Nullpointer-Ausnahme bei Verwendung von @RequestScoped Bean
- 13. Hive Union ALL - java Nullpointer Ausnahme
- 14. nullpointer Ausnahme in oncreateView() des Fragments
- 15. Nullpointer getSystemService
- 16. Odd Nullpointer
- 17. Nullpointer auf
- 18. NULLPOINTER-Ausnahme nach Aktualisierung auf Android-Design-Unterstützung 22.2.1
- 19. Android: die Registrierung als auf Server Nullpointer Ausnahme bei org.json.JSONTokener.nextCleanInternal
- 20. Nullpointer Ausnahme von der Änderung von Java zu Android
- 21. NullPointer Ausnahme beim Aufruf einer Methode von onResume
- 22. NullPointer Ausnahme beim Einstellen des Adapters für eine ListView
- 23. Erhalte eine Nullpointer-Ausnahme beim Umschalten von Displayables in J2ME
- 24. Java NullPointer Ausnahme innerhalb von for-Schleife mit ArrayQueue
- 25. JavaFX FXML App: seltsame NullPointer-Ausnahme an einem FXML-Knoten
- 26. Java Graphics Nullpointer
- 27. Polygon addPolygon Nullpointer
- 28. SmsManager.sendDataMessage() gibt Nullpointer Exception
- 29. Nullpointer in sessionContext.getCallerPrincipal()
- 30. Android getApplicationContext Nullpointer
Vielleicht schauen werfen http://stackoverflow.com/questions/271526/how-to-avoid-null-statements-in-java – Artelius
Zeigen Sie uns den Code. Deine Erklärung entspricht nicht meinen Erfahrungen. Aktivieren Sie auch Null-Checks im Compiler wenn möglich (zB mit Eclipse) –
Forgot um den Server neu zu starten und das war das Problem. Problem gelöst –