ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
817
817
EMPFEHLEN
-
guten abend,
ich verzweifle langsam ich sitze jetzt seit 2 1/2 stunden an diesem mini programm und finde den fehler nicht
es geht darum das die zahlen die der benutzer eingibt in einem objekt gespeichert werden was wiederum eine referenz aufs nächste objekt enthält also eine einfache verkettete liste
es kommt KEINE fehlermeldung sondern das programm tut einfach nicht das was es tun soll
es gibt nur die erste und letzte zahl aus
danke schonmal im voraus
hier mal der code:
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 69 70 71 72 73 74 75
import java.io.*; import java.util.Scanner; public class JavaKlassenTest { public static void main(String[] args) { Scanner in = new Scanner(System.in); String s; int i; int zahl = 0; boolean check = true; ZAHLEN zahl_current = null; ZAHLEN zahl_buffer = null; ZAHLEN erstesobjekt = null; while(true) { System.out.println("Bitte eine Aktion eingeben !"); s = in.next(); if(s.equals("neu")) { while(zahl != 999) { System.out.println("Nummer "); zahl = in.nextInt(); if(erstesobjekt != null) { zahl_current = new ZAHLEN(zahl); zahl_buffer.next = zahl_current; zahl_current.next = null; } else { erstesobjekt = new ZAHLEN(zahl); zahl_buffer = erstesobjekt; } } } if(s.equals("lesen")) { zahl_current = erstesobjekt; while(zahl_current.next != null) { System.out.println("Zahl: " + zahl_current.stnummer); zahl_buffer = zahl_current.next; zahl_current = zahl_buffer; } } } } public static class ZAHLEN { ZAHLEN next; int stnummer; public ZAHLEN(int nummer) { stnummer = nummer; } } }
-
17.10.10 04:02 #2
- Registriert seit
- Apr 2004
- Beiträge
- 1
Es ist schon spät und ich bin hundemüde, aber mir scheint du hast da einen Denkfehler drin bei der Zuweisung des Next-Links.
erstesobjekt.next bekommt nichts zugewiesen.
Ich denke du suchst einen Weg das letzte Objekt zuzuweisen, aber das ist schon weg. An deiner Stelle würde ich mit Klassen arbeiten.
Schau dir mal folgenden Beitrag an:
http://www.tutorials.de/java-grundla...-tauschen.html
Ein bisschen formatiert und das ganze ergänzt, wird zu:
<code>
public class HauptKlasse{
public static void main(String args[]) {
ListenElement liste = new ListenElement("1");
for(int i=2; i<11; i++){
liste.addElement(new ListenElement(""+i));
}
//Hier startet dann die Ausgabe
while (liste.next != null) {
System.out.println(liste.daten);
liste = liste.next;
}
}
static class ListenElement{
ListenElement next=null;
String daten;
int index = 0;
ListenElement(String neueDaten){
daten=neueDaten;
index =index++;
}
// hier wird ein element am ende der Liste angehängt.
void addElement(ListenElement element) {
if(next!=null){
next.addElement(element);
} else {
next = element;
}
}
}
}
</code>
Der Index ist momentan noch für nichts zu gebrauchen, aber im Beitrag steht ja auch, dass die Klasse noch erweitert werden soll mit Positionsvertauschung.
Gruß Rob
-
danke für die antwort vorallem um die uhrzeit hab das ganze jetzt mal ausprobiert und funktioniert
thx nochma
Ähnliche Themen
-
Java Verkettete Liste (wo liegt der fehler)
Von Hunter3 im Forum JavaAntworten: 2Letzter Beitrag: 17.10.10, 16:57 -
Java verkettete Liste Elemente tauschen
Von Doofkatze im Forum Java GrundlagenAntworten: 1Letzter Beitrag: 12.04.09, 11:48 -
verkettete Liste
Von neuling5 im Forum VisualStudio & MFCAntworten: 5Letzter Beitrag: 24.05.07, 11:45 -
Bekomme CSS-Liste nicht zentriert... wo liegt der Fehler
Von Karbrüggen im Forum CSSAntworten: 4Letzter Beitrag: 01.10.06, 18:04 -
verkettete Liste
Von rapier im Forum PHPAntworten: 0Letzter Beitrag: 13.01.05, 16:37





Zitieren
Login





