Null Pointer Exception in Liste

AS

Mitglied
Hallo,

ich habe folgendes Problem.

Ich habe folgende Main-Methode:

Java:
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		IntQueue test= new IntQueue();
		test.push(5);
		test.push(7);
		test.push(3);
		test.push(2);
		test.displayQueue();
	}

und hier die Methoden dazu:
Java:
      public void push (int x){
		Element n= new Element();
		n.val=x;
		n.next=top;
		top=n;
	}
public void displayQueue(){
	Element h=top;
	while(h.next != null){
	System.out.println(h);
	h=h.next;
	}
	}

Die Methoden sind in einer Klasse namens IntQueue.

Lasse ich das Programm dann laufen, kriege ich folgende Fehlermeldung:


java.lang.NullPointerException
at IntQueue.displayQueue(IntQueue.java:26)

Ich verstehe aber nicht, warum hier eine NullPointerException geworfen wird.

Kann mir Jemand meinen Fehler zeigen?

Gruß AS
 

anti-held

Bekanntes Mitglied
Jede Exception gibt dir an, wo sie passiert ist.
In diesem Fall in der Klasse IntQueue in Zeile 26.
Du versuchst in dieser Zeile eine Methode eines Objekts auszuführen, das null ist.
 

AS

Mitglied
Ja, das habe ich schon verstanden. Ich sehe nur nicht, wann ich hier ein Objekt aufrufe, das null ist. Ich teste in der displayQueue-Methode doch extra, ob das nächste Element null ist.

Wie kann es dann sein, dass hier eins aufgerufen wird, das null ist?
 

AS

Mitglied
Hallo ssoul26,

Dann hier ein bisschen mehr:

Die Klasse Element

Java:
public class Element {
	public int val=5;
	Element next;
}

next ist also lediglich eine Referenz. Sie wird immer benutzt, um die Listenelemente miteinander zu verknüpfen.

Top sollte nicht null sein, da es in der Methode push immer so benutzt wird, dass es auf das erste Listenelement zeigt und somit nicht null sein dürfte. Dazu sollte noch gesagt sein, dass "top" am Anfang einmal in der klasse außerhalb einer Methode deklariert und auf null gesetzt wird. Das hatte ich vergessen, entschuldigung.
 

AS

Mitglied
Jup, wird gemacht:


Also die Klasse Element nochmal:

Java:
public class Element {
	public int val=5;
	Element next;
}
die Klasse IntQueue:
Java:
public class IntQueue {
	Element top = null;
	public void displayQueue() {
		Element h = top;
		while (h.next != null) {
                        System.out.println(h);
			h = h.next;
		}
	}
public void push(int x) {
		Element n = new Element();
		n.val = x;
		n.next = top;
		top = n;
	}
}
und die Klasse Application:

Java:
public class Application {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		IntQueue test= new IntQueue();
		test.push(5);
		test.push(7);
		test.push(3);
		test.push(2);
		test.displayQueue();
			}
}

So, mehr hab ich nicht.

Danke schön schon mal für deine Hilfe :)

Gruß AS
 

ssoul26

Bekanntes Mitglied
Java:
public class IntQueue {
   public static void main(String[] args) {
      // TODO Auto-generated method stub
      IntQueue test = new IntQueue();
      test.push(5);
      test.push(7);
      test.push(3);
      test.push(2);
      test.displayQueue();
   }

   Element top = null;

   public void displayQueue() {
      Element h = top;
      while (h.next != null) {
         System.out.println(h.val);
         h = h.next;
      }
   }

   public void push(int x) {
      Element n = new Element();
      n.val = x;
      n.next = top;
      top = n;
   }

   public class Element {
      public int val = 5;

      Element next;
   }
}

Läuft bei mir ohne Fehler? Nicht gerade 100% richtig, aber ohne Fehler.
 

Joose

Top Contributor
Laut StackTrace fliegt die Exception in der Datei 'IntQueue.java' auf Zeile 26.
Welche Zeile in deinem SourceCode würde dies entsprechen?

(Da du uns den Code anscheinend nur zusammengestückelt zeigst)
 
Zuletzt bearbeitet:

ssoul26

Bekanntes Mitglied
Also wie erwähnt es läuft. Ob da jetzt noch was anderes mit hineinkommt, das weiss ich nicht. Ist mein Code vollständig, oder benutzt du noch was anderes?
 

AS

Mitglied
Mhm, wenn ich deinen Code kopiere, funktioniert es auch...

Du hast ja lediglich in der displayQueue-Methode bei Sysout h zu h.val geändert oder?
 

ssoul26

Bekanntes Mitglied
Genau, aber auch nur mit h, hat es auch funktioniert! ;) Vergleiche mal beide Versionen, oder kopiere deinen Gesamtcode,wie du in ausführst, samt Main etc, hierhin.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Null-Pointer Exception beim Programmstart Java Basics - Anfänger-Themen 8
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
C Null Pointer Exception Java Basics - Anfänger-Themen 10
G Null Pointer Exception Java Basics - Anfänger-Themen 4
D OOP Warum bekomme ich eine Null-Pointer Exception!!? :( Java Basics - Anfänger-Themen 4
L Null Pointer Exception bei setText Java Basics - Anfänger-Themen 9
T Null Pointer Exception Java Basics - Anfänger-Themen 4
T Null Pointer Exception Java Basics - Anfänger-Themen 8
H Null Pointer Exception Problem Java Basics - Anfänger-Themen 3
L Null Pointer Exception bei Focus Event bei einem JTextField Java Basics - Anfänger-Themen 2
D Null-Pointer-Exception Java Basics - Anfänger-Themen 5
E Hash Map - Null Pointer Exception? Java Basics - Anfänger-Themen 3
B Call By reference (Null pointer exception) Java Basics - Anfänger-Themen 6
J Null Pointer Exception in der "ob Null"-Abfrage? Java Basics - Anfänger-Themen 37
B Null Pointer Exception Java Basics - Anfänger-Themen 7
A Null Pointer Exception beim Erstellen eines Arrays aus einer eigenen Klasse Java Basics - Anfänger-Themen 3
K Null pointer exception in Methode Java Basics - Anfänger-Themen 4
D Null Pointer Exception Java Basics - Anfänger-Themen 8
D null pointer exception Java Basics - Anfänger-Themen 3
M Null Pointer Exception Java Basics - Anfänger-Themen 18
T Null Pointer Exception Java Basics - Anfänger-Themen 2
F Null Pointer Exception #2 Java Basics - Anfänger-Themen 5
I Unerklärliche Null-Pointer-Exception bei JRadioButton Array Java Basics - Anfänger-Themen 2
H Null Pointer Exception? Java Basics - Anfänger-Themen 4
G Null Pointer Exception Java Basics - Anfänger-Themen 10
N null pointer exception Java Basics - Anfänger-Themen 6
S Null-Pointer-Exception Java Basics - Anfänger-Themen 5
B Null Pointer Exception Java Basics - Anfänger-Themen 2
L nur kleines null Pointer Exception problem Java Basics - Anfänger-Themen 9
R Null Pointer Exception von anderer Klasse aus. Java Basics - Anfänger-Themen 2
N NULL Pointer Exception Java Basics - Anfänger-Themen 4
J Java.lang Null Pointer Exception Java Basics - Anfänger-Themen 3
Dilandau null pointer exception - woran liegts? Java Basics - Anfänger-Themen 16
W Null-Pointer trotz Konstruktor? Java Basics - Anfänger-Themen 9
Orkanson Null Pointer Expception Java Basics - Anfänger-Themen 3
G Null Pointer Exeption Java Basics - Anfänger-Themen 8
Z Null Pointer?! WHY? Java Basics - Anfänger-Themen 11
J Null-Pointer -> Code-Zeile ausgeben möglich? Java Basics - Anfänger-Themen 7
N null pointer exeption problem Java Basics - Anfänger-Themen 4
H Null pointer Exeption Java Basics - Anfänger-Themen 4
R Thread geht jetzt - aber - Fehler "Null-Pointer" Java Basics - Anfänger-Themen 20
S Vector wirdn icht gefüllt, null Pointer, was ist der Fehler Java Basics - Anfänger-Themen 6
T Ich brauche eine Schleife die eine beliebige Zahl so lange durch 10 teilt bis zur Null Java Basics - Anfänger-Themen 5
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
J 2 listen vergleichen, die auch null Elemente haben können ! Java Basics - Anfänger-Themen 9
I Grundsatzfrage: Belegt eine Referenz auf 'null' RAM, und wenn ja - wieviel ;-) ? Java Basics - Anfänger-Themen 5
H Ein übergegebenes Objekt auf null setzen Java Basics - Anfänger-Themen 9
P Buffer und null Java Basics - Anfänger-Themen 3
"java.util.HashMap.get(Object)" is null Java Basics - Anfänger-Themen 10
jakobfritzz Array- cannot invoke "" because "" is null Java Basics - Anfänger-Themen 4
W Wie ziehe ich von einer bestimmten Zahl, Zahlen ab, bis mein Ergebnis null beträgt? Java Basics - Anfänger-Themen 10
N null in String replacen Java Basics - Anfänger-Themen 16
S JavaKara Null Exception Error Java Basics - Anfänger-Themen 4
K Bufread.readLine())!= null wie beenden? Java Basics - Anfänger-Themen 4
C Variablen Provided text for message may not be null Java Basics - Anfänger-Themen 9
T ComboBox getValue() zeigt null Java Basics - Anfänger-Themen 7
J null exception Array Java Basics - Anfänger-Themen 5
tobikoch String x= null Bedeutung Java Basics - Anfänger-Themen 9
C NumberFormatException: null ohne Ausnahmebehandlung stoppen Java Basics - Anfänger-Themen 7
J Int wird als Null ausgegeben Java Basics - Anfänger-Themen 8
M Prüfen auf null ohne NPE Java Basics - Anfänger-Themen 1
C Array-Eintrag wieder auf Null setzen Java Basics - Anfänger-Themen 3
C Array auf Null-Inhalte prüfen Java Basics - Anfänger-Themen 9
V NullPointerException, wenn Key und Value null sind Java Basics - Anfänger-Themen 2
M jTable bekommt null Java Basics - Anfänger-Themen 1
B MySQL (jdbc) -> connection liefert NULL Java Basics - Anfänger-Themen 3
der_Schokomuffin Hilfe gesucht: String wird auf null gesetzt! Java Basics - Anfänger-Themen 17
L Warum ist Variable null? Java Basics - Anfänger-Themen 3
J javax.servlet.ServletException: Name is null Java Basics - Anfänger-Themen 7
B if(object== null) abkürzen? Java Basics - Anfänger-Themen 6
O JavaArray Null Java Basics - Anfänger-Themen 3
U Null Exception aber keine Ahnung warum Java Basics - Anfänger-Themen 5
W NullPointerException obwohl nicht null? Java Basics - Anfänger-Themen 3
D Best Practice Konvention - Klassenmembers auf null setzen? Java Basics - Anfänger-Themen 2
I Null-Überprüfung durch Lambda-Expressions abkürzen Java Basics - Anfänger-Themen 8
M set Integer bzw. set null mit SQL DB Java Basics - Anfänger-Themen 9
I Polymorphie Null Objekt Java Basics - Anfänger-Themen 3
O Datentypen Integer mit führender Null Java Basics - Anfänger-Themen 13
DaCrazyJavaExpert Compiler-Fehler Variable nicht mit null initialisiert, trotzdem: NullPointerException Java Basics - Anfänger-Themen 28
J Einfache Frage zu "null" Java Basics - Anfänger-Themen 2
T Datei in Array einlesen "null" Java Basics - Anfänger-Themen 8
P Operatoren Parameter nicht auf null geprüft? Java Basics - Anfänger-Themen 16
K Operatoren 2D Int Array auf Null-Referenzen prüfen Java Basics - Anfänger-Themen 18
V Elemente aus einem Array mit null überschreiben Java Basics - Anfänger-Themen 4
V String Array gegen null-Eintrag sichern Java Basics - Anfänger-Themen 11
R Gleitkommazahlen ohne führende Null Java Basics - Anfänger-Themen 10
M array = null Java Basics - Anfänger-Themen 2
F String equals NULL Problem Java Basics - Anfänger-Themen 4
F JSON null macht mir ein Problem Java Basics - Anfänger-Themen 3
R Property Value als null setzen Java Basics - Anfänger-Themen 1
D Arrays.toString spuckt null aus? Java Basics - Anfänger-Themen 3
T Compiler-Fehler Null type safety (type annotations) Java Basics - Anfänger-Themen 5
F Erste Schritte Unterschied: Array "leer" / "null" Java Basics - Anfänger-Themen 3
J Fehlerhafte Ausgabe "null" Java Basics - Anfänger-Themen 2
G Threads zum Thema Threads??? null Ahnung Java Basics - Anfänger-Themen 4
W Input/Output DataOutputStream gibt NULL zurück Java Basics - Anfänger-Themen 5
J Einfach verkettet List: Ausgabe ohne null Java Basics - Anfänger-Themen 11
D Null Ausgabe obwohl wert zugewiesen Java Basics - Anfänger-Themen 5
J Alias null Java Basics - Anfänger-Themen 4
B Aliasing bei null-Objekten Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben