ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
698
698
EMPFEHLEN
-
Ich baue grade eine LinkedList
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package textprocessing; import textprocessing.Queue.EmptyQueueException; /** * * @author ich */ public class LinkedList<Item> implements Queue<Item> { private Node head; protected int size; public LinkedList(){ head = null; size = 0; } protected class Node{ Item item; Node next; Node(Item item, Node next){ this.item = item; this.next = next; } } public int size() { return size; } public boolean isEmpty() { return size == 0; } public void enqueue(Item item) { if (head == null){ head = new Node(item, head.next); } else{ head.next = new Node(item,head.next); size++; } } public Item dequeue() throws EmptyQueueException { if (isEmpty()){throw new EmptyQueueException(); } Node item = head; head = head.next; head.next = head.next.next; return item.item; } public static void main(String[] args) { LinkedList<String> list = new LinkedList<String>(); list.enqueue("Bier"); list.enqueue("Alkohol"); list.enqueue("Schnaps"); list.enqueue("Jaegermeister"); list.dequeue(); System.out.print(list); } }
Bei meiner enqueue Funktion bekomme ich eine Nullpointer Exception scheinbar da mein head.next auf einen null Wert linkt, ich hab allerdings keine Ahnung wie ich das ändern kann, hat da jemand nen Tipp für mich?
-
22.10.11 14:05 #2SE Tutorials.de Gastzugang
Also das sieht man schon ohne es zu Compilen ..
Code java:1 2
if(head==null) head=new Node(item, head.next)
Wenn "head" NULL ist ... warum versuchst du dann "head.next" zu callen ? Dass das schief geht sollte eigentlich klar sein.
btw :
1) Bitte verwende in Zukunft Java-Tags *siehe Signatur*
2) Poste bitte nächste mal den komplett StackTrace *auch wenn das hier jetzt nicht nötig war weil man es wie gesagt schon im Source lesen kann das da was nicht hinkommt.
-
Hi
Code java:1 2 3 4 5 6 7 8 9 10
public void enqueue(Item item) { if (head == null) { head = new Node(item, null); size = 1; } else { head = new Node(item, head); size++; } }
dequeue ist auch irgendwie seltsam...
GrußNetiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
22.10.11 14:11 #4SE Tutorials.de Gastzugang
Was ich grade nicht verstehe : warum baust du dir eine eigene LinkedList und verwendest nicht einfach java.util.LinkedList<E> ?
Als Lernziel um zu verstehen wie sowas funktioniert stell ich mir das ja noch halbwegs sinnvoll vor ... aber produktiv würde ich dann doch lieber das vorhandene nehmen.
Ähnliche Themen
-
[c++] linked lists
Von aldur im Forum C/C++Antworten: 0Letzter Beitrag: 17.06.10, 08:59 -
Linked LinkedList
Von thomy800 im Forum JavaAntworten: 3Letzter Beitrag: 23.11.07, 18:09 -
corrupted double-linked list : 0x....
Von maniacquaker im Forum C/C++Antworten: 7Letzter Beitrag: 30.01.07, 19:14 -
Suche in einer Linked List
Von FireFlow im Forum C/C++Antworten: 4Letzter Beitrag: 27.04.05, 15:38 -
linked list
Von Lemiras im Forum C/C++Antworten: 5Letzter Beitrag: 15.04.05, 13:20





Zitieren

Login





