Entfernen aus einer Liste

starbug08

Mitglied
hi leute hab mal ne verständnisfrage, also ich habe eine aufgabe bekommen in der ich eine methode schreiben soll die das letzte element einer beliebig langen liste entfernt. allerdings hat diese liste zwei dummy elemente (anfang und ende ) die keine daten enthalten. die liste besteht desweiteren aus Link elementen die die daten referenzieren. na ja kurz um man muss ja zum löschen nur die referenzen ändern. hier ist mein code.

Java:
public Link entfernen()
{

    Link aktuell = anfang.naechster;
    Link vorgaenger = anfang;

    while ( aktuell != ende)
    {
        aktuell = aktuell.naechster;
        vorgaenger = vorgaenger.naechster;

        if(vorgaenger==ende)
        {
            return null;
        } else if (aktuell.naechster==ende)
        {
            vorgaenger.naechster = ende;
            ende = ende.naechster.naechster;           
        }
      }
            return aktuell;
}

hab den code ausprobiert und es funzt auch, aber meine frage ist nun wieso genau?? hab gedacht ich müsste aktuell auch auf "null" setzen damit aktuell keine verweis mehr auf "ende" hat und somit weg ist. setzt ich das aber auf null kommt natürlich die nullpointer exception.kann mir einer bei dieser frage helfen??
 
S

SlaterB

Gast
aktuell wird in der Rückgabe noch auf ende verweisen, wenn != null, aber das stört doch nicht,
aktuell ist auch nur eine lokale Variable, die auf null oder sonstwas zu setzen hat auf die Liste keine Auswirkung,

wichtig ist für die Liste anfang, dort naechser usw., deswegen wird vom vorgaenger der naechster-Link geändert,
damit ist der aktuelle Link schon raus

ich verstehe nur Zeile 18 nicht, warum hat ende überhaupt einen Nachfolger, warum wird die ende-Variable neu gesetzt?
wahrscheinlich ist ende.naechster.naechster == ende, dann macht diese Zeile einfach nix
 

starbug08

Mitglied
Java:
 ende = ende.nächster.nächster;

deshalb weil das dummy element ende noch auf seinen vorgänger verweist.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Y Knoten an einem gegebenen Index aus einer Liste entfernen. Java Basics - Anfänger-Themen 6
M Untersuchen ob ein Graph nach entfernen einer Kante immer noch zusammenhängend ist Java Basics - Anfänger-Themen 70
ReinerCoder Vererbung von JFrame in einer Klasse entfernen Java Basics - Anfänger-Themen 5
A Folgende Nullen einer Kommazahl aus String entfernen Java Basics - Anfänger-Themen 3
B Wie kann man auf das JFrame einer anderen Klasse zugreifen, etwas hinzufügen und entfernen?? Java Basics - Anfänger-Themen 3
T die letzten X zeilen einer datei entfernen Java Basics - Anfänger-Themen 19
Rxiiz Objekt aus ComboBox entfernen Java Basics - Anfänger-Themen 4
L Buchstaben entfernen zipZap Java Basics - Anfänger-Themen 8
padde479 Zeile entfernen TableModel Java Basics - Anfänger-Themen 11
M Queue-Datenstruktur: nach dem Elementen entfernen, das Ergebnis ist immer noch nicht optimal. Java Basics - Anfänger-Themen 3
E Elemente aus Liste entfernen und hinzufügen Java Basics - Anfänger-Themen 3
B Objekt aus generalisierter Liste entfernen Java Basics - Anfänger-Themen 11
G Bei dynamischer Arrayliste nach jeder Auswahl Zahl entfernen Java Basics - Anfänger-Themen 3
A JTextArea entfernen und durch neuen Text ersetzen Java Basics - Anfänger-Themen 8
Lion.King Dupklikationen entfernen Java Basics - Anfänger-Themen 4
HolyFUT Input/Output Leerzeichen aus String entfernen - klappt nicht! Java Basics - Anfänger-Themen 13
bluetrix Hash Set hälfte entfernen Java Basics - Anfänger-Themen 7
S Variablen Letzte Zeile eines Strings entfernen Java Basics - Anfänger-Themen 1
A Jedes zweite Element eines Arrays entfernen Java Basics - Anfänger-Themen 30
T Leerzeichen im String entfernen Java Basics - Anfänger-Themen 6
EchtKeineAhnungManchmal Controller aus FXML Datei entfernen Java Basics - Anfänger-Themen 49
Bademeister007 Elemente aus zwei verschiedenen Arrays miteinander vergleichen und gegeben falls entfernen Java Basics - Anfänger-Themen 14
R Mehrere Buchstaben aus einem String entfernen Java Basics - Anfänger-Themen 1
J String aus einem Array entfernen Java Basics - Anfänger-Themen 10
X Erste Schritte String: Alle doppelten Leerzeilen entfernen Java Basics - Anfänger-Themen 21
J erstes Vorkommen eines Chars aus einem String entfernen Java Basics - Anfänger-Themen 3
J erstes Vorkommen eines chars entfernen Java Basics - Anfänger-Themen 1
E Nullen aus Nachkommastellen entfernen Java Basics - Anfänger-Themen 2
L Jede zweite Ziffer entfernen (rekursiv) Java Basics - Anfänger-Themen 6
D JList ListSelectionEvent entfernen? Java Basics - Anfänger-Themen 13
O Methode um Vokale zu entfernen UNSCHOEN! Java Basics - Anfänger-Themen 8
S spezielle Wörter aus Liste entfernen Java Basics - Anfänger-Themen 2
G Teil(e) eines Strings entfernen wenn spezifische Zeichen (< & >) vorkommen Java Basics - Anfänger-Themen 5
F Problem beim entfernen von mehreren Listenelementen auf einmal (Programmierung des Spiels Arschloch) Java Basics - Anfänger-Themen 1
Dimax Leerzeilen aus einem String entfernen Java Basics - Anfänger-Themen 61
C Zeichen im String bis zu bestimmter Stelle entfernen Java Basics - Anfänger-Themen 6
C Entfernen des ersten String-Elements Java Basics - Anfänger-Themen 6
T Klassen Doppelte Elemente aus Container entfernen Java Basics - Anfänger-Themen 6
R Buchstabe aus String entfernen Java Basics - Anfänger-Themen 13
D Leerzeichen entfernen Java Basics - Anfänger-Themen 4
J Objekt aus Liste entfernen Java Basics - Anfänger-Themen 20
H Gerade Zahlen aus Array entfernen Java Basics - Anfänger-Themen 8
S Zeile entfernen aus JTable Java Basics - Anfänger-Themen 15
H Erste Schritte String Vokale entfernen Java Basics - Anfänger-Themen 11
D Java doppelte Zahlen auch über 10 in einem String entfernen Java Basics - Anfänger-Themen 2
D Java doppelte Zahl/Zeichen in einem String entfernen Java Basics - Anfänger-Themen 6
A altes JPanel entfernen und neues öffnen Java Basics - Anfänger-Themen 5
O JTextPane / JtextArea Zeilenabstand entfernen Java Basics - Anfänger-Themen 1
P Java Leerzeichen in der Ausgabe entfernen Java Basics - Anfänger-Themen 3
I in listFiles() oder JList Dateiendungen entfernen Java Basics - Anfänger-Themen 14
S Leerzeichen zwischen zwei Zeichen im String entfernen Java Basics - Anfänger-Themen 19
N Probleme beim entfernen eines JPanels Java Basics - Anfänger-Themen 4
S Logging Code komplett von Compiler entfernen lassen..? Java Basics - Anfänger-Themen 5
B Doppelte Werte aus Array entfernen ohne Import - Algorithmus Java Basics - Anfänger-Themen 5
R Best Practice Elemente aus ArrayList entfernen (performant) Java Basics - Anfänger-Themen 6
J Alle Leerzeichen aus String entfernen Java Basics - Anfänger-Themen 13
C Doppelte Einträge aus String [] Array entfernen. Java Basics - Anfänger-Themen 5
S String aus String entfernen Java Basics - Anfänger-Themen 2
Q Kommastellen hinter double wert entfernen Java Basics - Anfänger-Themen 5
M bestimmten Teil eines Strings entfernen Java Basics - Anfänger-Themen 4
G Multiple Leerzeichen entfernen Java Basics - Anfänger-Themen 13
H Redundante Elemente aus ArrayList entfernen Java Basics - Anfänger-Themen 3
S Umlaute aus Dateisystem entfernen Java Basics - Anfänger-Themen 5
L 0 nach Komma entfernen Java Basics - Anfänger-Themen 9
S NumberFormat Tausender Zeichen entfernen? Java Basics - Anfänger-Themen 4
A ; entfernen Java Basics - Anfänger-Themen 3
R Vokale aus String entfernen Java Basics - Anfänger-Themen 11
A Elemente aus Liste entfernen Java Basics - Anfänger-Themen 5
G Long oder int Vorzeichen entfernen Java Basics - Anfänger-Themen 3
J Duplikate aus Liste entfernen Java Basics - Anfänger-Themen 16
A Threads Zur Laufzeit hinzufügen/entfernen Java Basics - Anfänger-Themen 10
C Variablen array element hinzufügen/entfernen Java Basics - Anfänger-Themen 10
S Collections Aus Set<Object> bestimmte Typen entfernen Java Basics - Anfänger-Themen 3
E JButton Hintergrund / Rahmen entfernen? Java Basics - Anfänger-Themen 4
H Eintrag aus ArrayList entfernen Java Basics - Anfänger-Themen 7
H Listener und Events entfernen Java Basics - Anfänger-Themen 2
M zeichen aus string entfernen Java Basics - Anfänger-Themen 2
B Element aus Array entfernen Java Basics - Anfänger-Themen 13
M Anführungszeichen entfernen Java Basics - Anfänger-Themen 9
T Elemente aus einem ArrayList entfernen Java Basics - Anfänger-Themen 12
C leerstellen entfernen Java Basics - Anfänger-Themen 12
J Menüleiste Kaffe-Icon entfernen wie? Java Basics - Anfänger-Themen 8
K OOP Aus Collection Objekte bestimmter Subklassen entfernen Java Basics - Anfänger-Themen 7
Benji0815 HTML <div> Tags entfernen Java Basics - Anfänger-Themen 6
TheKing Programm-Icon entfernen Java Basics - Anfänger-Themen 3
N Panel entfernen Java Basics - Anfänger-Themen 2
Povlsen84 String - Zeichen am Anfang entfernen Java Basics - Anfänger-Themen 11
R Zeichnung entfernen und neue Zeichnen lassen Java Basics - Anfänger-Themen 20
J Stapel oberstes Element entfernen Java Basics - Anfänger-Themen 5
T HTML Kommentare mit regulären Ausdrücken entfernen Java Basics - Anfänger-Themen 4
S Regulärer Ausdruck - alles was keine Zahl ist entfernen Java Basics - Anfänger-Themen 2
C Abhängigkeiten zwischen Projekten entfernen Java Basics - Anfänger-Themen 6
M Array List Objekt Entfernen Java Basics - Anfänger-Themen 15
F Umlaute eines Strings entfernen (Verwendung von this?) Java Basics - Anfänger-Themen 2
-horn- Doppelte Einträge entfernen, aus Array, List oder sonstwas Java Basics - Anfänger-Themen 9
J Doppelte Integer aus einem Array entfernen - seltsames Prob. Java Basics - Anfänger-Themen 5
B Dopplete aus Vector entfernen Java Basics - Anfänger-Themen 8
G HTML Zeichen aus String entfernen? Java Basics - Anfänger-Themen 5
R aus Text Kommentare entfernen Java Basics - Anfänger-Themen 12
G Zyklen entfernen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben