Null Pointer Exception bei BufferedReader

Serbel

Mitglied
Hallo Leute,
Ich habe ein Problem, dass ich nicht so ganz verstehe. Hier sind mal kurz 2 Programmausschnitte:

NR1:
Java:
...
String z;
        
       while((z = br.readLine())!= null) { ...}
...
wobei br ein BufferedReader ist

NR2:
Java:
...
while( br.readLine()!= null) {...} 
...

In meinen Augen gibt es keinen Unterschied zwischen den beiden Ausschitte, jedoch bekomme ich beim Ausführen einer identischen Demo-Anwendung bei NR2 eine NullPointerException in der Zeile
"while( br.readLine()!= null) ", wobei diese NullPointerException in Beispiel NR1 nicht geworfen wird. Kann mir das jemand erklären?
 
M

Marcinek

Gast
Dann muss in Beispiel 2 br null sein.

Oder der Stream von br.

How ever ein Stacktrace gibt genauen auskunft. Und man kann debuggen um zu sehen was da null. Aber i.d.R. ist das sofort ersichtlich.
 

Serbel

Mitglied
Hi Leute,
Marcinek hat geschrieben:
"Dann muss in Beispiel 2 br null sein.

Oder der Stream von br."

Das kann aber nicht sein, denn wie bereits geschrieben, handelt es sich um ein und dieselbe Demo-Anwendung und es gibt außer der erwähnten Zeile absolut keinen Unterschied zwischen dem funktionierendem Programm und dem Programm, bei dem die NullPointerException geworfen wird d.h. wenn die NullPointerException in NR2 geworfen wird, da br null ist, dann müsste br auch in NR1 null sein, oder der Stream.
 
S

SlaterB

Gast
falls der Fehler nicht zufällig im {...} womöglich in derselben Zeile stattfindet hast du da in der Tat soweit ein kniffliges Rätsel aufgestellt,
das muss zugegeben werden

andererseits wie gesagt ein langweiliges, da NullPointerException quasi immer lockerleicht aufgeklärt werden können,
nur den StackTrace anschauen, Objekte auf null prüfen usw.

> [..] absolut keinen Unterschied zwischen [..]

das heißt also dass die Variable z im ersten Programm nicht verwendet wurde?
oder kann es doch sein dass diese jetzt null ist und stört (wobei jetzt eigentlich nicht initialisiert)?

falls du es mit 'keinen Unterschied' doch nicht so genau nimmst und in der Schleife auch noch readLine() aufrufst,
dann kann das jetzt natürlich null werden, die Schleifenbedingung schützt nicht mehr, während z vorher garantiert nicht null war
 
Zuletzt bearbeitet von einem Moderator:

faetzminator

Gesperrter Benutzer
falls du es mit 'keinen Unterschied' doch nicht so genau nimmst und in der Schleife auch noch readLine() aufrufst,
dann kann das jetzt natürlich null werden, die Schleifenbedingung schützt nicht mehr, während z vorher garantiert nicht null war

Hab ich auch gerade gedacht.
Serbel, jedes Mal, wenn du [c]readLine()[/c] aufrufst, wird natürlich die nächste Zeile eingelesen. Wenn du nun ein solches File hast:
Code:
1
2
3
4
5
und diesen Code:
Java:
while (br.readLine() != null) {
    System.out.println(br.readLine());
Dann wird [c]2[/c], [c]4[/c] und [c]null[/c] ausgegeben, da nach der 5. Zeile natürlich [c]null[/c] zurückgegeben wird.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Queue: Wie kann hier ein null-Pointer Exception auftreten?! Allgemeine Java-Themen 11
L null pointer exception Allgemeine Java-Themen 10
knuckles12 null pointer exception bei arrays Allgemeine Java-Themen 6
B Null Pointer Exception bei Canvas-objekt-Aufruf Allgemeine Java-Themen 12
G Nicht abgefangene Null-Pointer-Exception Allgemeine Java-Themen 2
S Null Pointer Exception Allgemeine Java-Themen 10
E RMI NULL-Pointer-Exeception wenn der RMI-Proxy eine Methode deligiert Allgemeine Java-Themen 2
T JasperReports mit Null Pointer Allgemeine Java-Themen 3
J Null Pointer in der compare-Methode des Comparators? Allgemeine Java-Themen 18
Zrebna Wieso sollte man Null-Prüfungen nicht mit Optional-Objekten nutzen? Allgemeine Java-Themen 13
Zrebna SonarLint: Warum kein Null-Referencing-CodeSmell-Hint hier? Allgemeine Java-Themen 23
OnDemand Java String in Hashmap als Key NULL Allgemeine Java-Themen 27
8u3631984 Argument Captor liefert NULL zurück Allgemeine Java-Themen 2
E Class.getResourceAsStream() gibt null zurück Allgemeine Java-Themen 2
Zrebna Gibt es eine Möglichkeit eine NPE zu vermeiden, wenn null returned wird? Allgemeine Java-Themen 3
J Zahlen Abstand zur Null bestimmen Allgemeine Java-Themen 11
C javax.mail.Message message.setreplyto() null setzen (keine replyto Adresse) Allgemeine Java-Themen 25
S An internal error occurred during: Launching null argument Allgemeine Java-Themen 1
S Validation Null aber nicht Blank und muss Email sein Allgemeine Java-Themen 22
L Google Guice Field Injection returns null Allgemeine Java-Themen 2
J Java Objekte = null, Garbagecollector Allgemeine Java-Themen 12
N MsgPack - Null Check Allgemeine Java-Themen 5
DanielsLPecke Compiler-Fehler Warum ist der String null? Allgemeine Java-Themen 10
M Warten bis Variabel nicht null ist Allgemeine Java-Themen 18
Thallius Simple JSON Parser Error null Allgemeine Java-Themen 6
M Null byte in verschiedenen charsets Allgemeine Java-Themen 2
S Lambda Ausdrücke: @FunctionalInterface Instanzen auf null prüfen Allgemeine Java-Themen 9
B [Android] EditText-Object ist null - Nimmt nicht den Wert des enthaltenen Textfeldes ein Allgemeine Java-Themen 2
D Java Process OutputStream ist null Allgemeine Java-Themen 4
O log4j, Problem bei Ausgabe null-Wert Allgemeine Java-Themen 0
T InvalidClassException - Read null attempting to read class descriptor for object Allgemeine Java-Themen 8
D Problem mit führender Null bei Schlüsselerzeugung Allgemeine Java-Themen 5
T Variablenübergabe liefert immer null Allgemeine Java-Themen 13
K Image beim catchen ist immer null Allgemeine Java-Themen 9
B Load of Known null Value Allgemeine Java-Themen 9
W Kleine Frage zu Null-Pinter-Exception Allgemeine Java-Themen 21
T Array Sortieren (null Werte ans Ende) Allgemeine Java-Themen 2
M Objekt prüfen auf null ->Invocation Target Exception??? Allgemeine Java-Themen 2
Tobse Vererbung null aus Elternklasse "dominant"? Allgemeine Java-Themen 15
I newInstance() liefert null zurück Allgemeine Java-Themen 4
R Attribut null Allgemeine Java-Themen 6
C Regex: Zahl ohne führende Null Allgemeine Java-Themen 13
E rückgabewert ist immer null Allgemeine Java-Themen 2
N List auf null prüfen Allgemeine Java-Themen 2
TiME-SPLiNTER Von Unix, InputStreams und Null Bytes Allgemeine Java-Themen 2
R dateFormat - Uhr fängt nicht bei null an Allgemeine Java-Themen 2
P Null in ArrayList Allgemeine Java-Themen 3
N Strings mit null wiedergabe Splitten Allgemeine Java-Themen 4
mongole Formatter + null Allgemeine Java-Themen 4
X Prozess-Objekt nach Ausführung der destroy-Methode null oder nicht null ? Allgemeine Java-Themen 10
A Umgang mit null Allgemeine Java-Themen 16
L Object = null? Allgemeine Java-Themen 16
nrg Leere Objektreferenz mit != null vergleichen Allgemeine Java-Themen 4
T Set.contains() auch false wenn value == null? Allgemeine Java-Themen 4
D Matrix, ArrayList, null-Zellen Allgemeine Java-Themen 6
F Hibernate speichern - Null Allgemeine Java-Themen 5
T WeakHashMap: Wie "null" effizient abfangen? Allgemeine Java-Themen 5
N Null Durchblick in Java, Jobwechsel? Allgemeine Java-Themen 19
M nichtreferenzierte Objekte auf NULL setzen -> Performance Allgemeine Java-Themen 4
S JFreeChart LineChart Punkte über NULL Werte hinweg verbinden Allgemeine Java-Themen 5
N Array mit null Werten filtern Allgemeine Java-Themen 5
S Combobox --> liefer null? Allgemeine Java-Themen 3
A java.net.UnkownHostException: null bei jar-File Allgemeine Java-Themen 16
H NullPointerException trotz Abfangen von null? Allgemeine Java-Themen 9
R if (obj == null || obj.isEmpty()) Allgemeine Java-Themen 21
P <null> in einer DB abfragen Allgemeine Java-Themen 4
P Image auf einem Panel mit null-Layout Allgemeine Java-Themen 8
M getResourceAsStream immer null Allgemeine Java-Themen 4
R Array komplett auf null setzen Allgemeine Java-Themen 10
A JasperReport Detail bringt null bei Datenübergabe Allgemeine Java-Themen 4
S instanceof und null Allgemeine Java-Themen 7
M Führende Null in einem Datum Allgemeine Java-Themen 3
L null != null ? Allgemeine Java-Themen 16
Redfrettchen Rückgabe nicht sinnvoll: Exception oder null zurück? Allgemeine Java-Themen 9
B Null- oder IllegalArgumentException Allgemeine Java-Themen 12
C ImageIO die read-Methode liefert mir ein null- Wert zurück Allgemeine Java-Themen 10
K Exception im Konstruktor / Objekt == null Allgemeine Java-Themen 7
Z bedeutung (übersetzung) von null? Allgemeine Java-Themen 5
T Exception im Constructor -> null-Referenz zurückgeben Allgemeine Java-Themen 6
C Objekte null setzen? Allgemeine Java-Themen 7
Curtis_MC Pointer mit ArrayList vergleichen Allgemeine Java-Themen 6
Survari Variablen Java Function Pointer Allgemeine Java-Themen 8
R Inputstream lesen mit Pointer Allgemeine Java-Themen 0
T C DLL einbinden und Pointer übergeben Allgemeine Java-Themen 13
D Pointer in Java Allgemeine Java-Themen 8
B List Pointer zurücksetzen Allgemeine Java-Themen 10
M JNA Pointer Allgemeine Java-Themen 2
G Pointer und Referenzen Allgemeine Java-Themen 3
F Pointer oder Reference? Allgemeine Java-Themen 8
T JNI: jcharArray: warning: cast to pointer from integer of. Allgemeine Java-Themen 5
O Pointer/reference on method Allgemeine Java-Themen 10
H Object cast exception Allgemeine Java-Themen 6
W Queue.remove() -> no such element exception Allgemeine Java-Themen 17
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
N Kann ich die Nullpointer Exception umgehen Allgemeine Java-Themen 12
N A java Exception has occured Allgemeine Java-Themen 8
G javafx "class path" exception Allgemeine Java-Themen 5
H Interface PluginSystem ClassNotFound exception für library Klassen Allgemeine Java-Themen 10
tom.j85 Exception bei Abfrage von Ländercodes in API? Allgemeine Java-Themen 13
S Exception Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben