ArrayList sortieren

Hausaufgaben: ArrayList sortieren

Wir machen keine Hausaufgaben, aber wir helfen dabei
12
  1. ArrayList sortieren #1
    kpvonnichts


    ArrayList sortieren - Standard ArrayList sortieren
    Hallöle,

    wir schreiben im Unterricht momentan ein kleines Programm, so etwas wie ein Notizbuch (mit GUI). Bisher kann mein "Notizbuch" Notizen hinzufügen, löschen und anzeigen sowie aus allen Notizen diejenige, die alphabetisch am niedrigsten ist, heraussuchen. Nun sollen wir eine Methode schreiben, die alle Notizen alphabetisch sortiert.
    Dazu war mein Grundgedanke folgender: Ich erstelle eine zweite ArrayList, in die ich die Notizen (sortiert) packe und aus der sie dann wieder in die erste kommen. Hier erstmal der Code der Methode:
    Java Code:
    1. public void sortieren(){
    2. ArrayList<String> geordneteNotizen;
    3. int index = 0;
    4. while(index<anzahlNotizen()){
    5. index = kleinstenRaussuchen();
    6. geordneteNotizen.add(notizen.get(index)); }
    7. }


    Java Editor sagt mir in Zeile 6: "Variable might not have been initialized".
    Generell habe ich irgendwie das Gefühl, dass der komplette Code für die Mülltonne ist. Habe ihn auch unter Kopfschmerzeinfluss geschrieben . Kann man das irgendwie besser lösen?

  2. ArrayList sortieren #2
    ARadauer


    Collections.sort

    darfst du das verwenden oder willst du selber sortieren?


    Das sollte deinen Fehler beseitigen:
    ArrayList<String> geordneteNotizen = new ArrayList<String>();

  3. ArrayList sortieren #3
    Final_Striker


    Zitat Zitat von kpvonnichts Beitrag anzeigen
    Java Editor sagt mir in Zeile 6: "Variable might not have been initialized".
    [c] ArrayList<String> geordneteNotizen = new ArrayList<String>();[/c]

  4. ArrayList sortieren #4
    kpvonnichts


    Ahja sowas hatte ich mir schon gedacht, vielen Dank für die schnellen Antworten

    Ich glaube, ich muss selber sortieren.

    Habe jetzt (hoffentlich) das letzte Problem:
    Java Code:
    1. public void sortieren(){
    2. ArrayList<String> geordneteNotizen = new ArrayList();
    3. int index = 0;
    4. while(index<anzahlNotizen()){
    5. index = kleinstenRaussuchen();
    6. geordneteNotizen.add(notizen.get(index));
    7. }
    8. int index2 = 0;
    9. while(index2<anzahlNotizen()){
    10. notizen.add(geordneteNotizen.get(index2));
    11. index2 = index2 + 1;
    12.  
    13.  
    14. }
    15. }


    Das ist jetzt meine Methode, nur scheint die nicht zu funktionieren. Die "Notizen" lassen sich einfach nicht sortieren. Ich bekomme jede Menge Fehler, weiß aber nicht, wo die herkommen.

  5. ArrayList sortieren #5
    L-ectron-X


    Welche Fehlermeldungen?

  6. ArrayList sortieren #6
    kpvonnichts


    Diese...
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken -unbenannt.jpg  

  7. ArrayList sortieren #7
    JohannisderKaeufer

    Die Fehlermeldung "kann" daher rühren, das du in einer Endlosschleife immer das kleinste Objekt in deine Arrayliste geordneteNotizen füllst bis der Speicher zur Neige geht.

    Nach Zeile 6 mußt du auch das kleinste Objekt aus deinen Notizen entfernen.
    Java Code:
    1.  
    2. notizen.remove(index);

    Ansonsten liefert dir kleinstenRaussuchen() immer die gleiche Notiz

    Zeile 8-14 kann man z.B auch so schreiben
    Java Code:
    1. notizen.addAll(geordneteNotizen);

  8. ArrayList sortieren #8
    kpvonnichts


    Hallo und danke nochmal, die Fehler erscheinen nicht mehr. Nur funktioniert die "sortieren"- Methode immer noch nicht:
    Java Code:
    1. public void sortieren(){
    2. ArrayList<String> geordneteNotizen = new ArrayList();
    3. int index = 0;
    4. while(index<anzahlNotizen()){
    5. index = kleinstenRaussuchen();
    6. geordneteNotizen.add(notizen.get(index));
    7. notizen.remove(index);
    8. }
    9. notizen.addAll(geordneteNotizen);
    10.  
    11.  
    12. }


    Die Methode kleinstenRaussuchen() funktioniert (returnet immer den alphabetisch kleinsten Eintrag). Nur wenn ich in der GUI einen Knopp erstelle und den als Auslöser für die Methode "sortieren()" nehme (also book.sortieren() reinschreibe), tut sich nichts. Hat jemand eine Idee, woran das liegen könnte?

  9. ArrayList sortieren #9
    ARadauer


    Hat jemand eine Idee, woran das liegen könnte?
    ja klar an deinem code
    zb wie du die methode aufrufst oder kleinstenRaussuchen, kann sein das die sache ewig läuft...
    W
    arum schreibst du dir nicht ein paar System.out.println Meldungen in deinen code das du siehst was passiert?

  10. ArrayList sortieren #10
    kpvonnichts


    kleinstenRaussuchen() funktioniert einwandfrei und läuft nicht ewig, das habe ich ausprobiert. Die Methode aufrufen tue ich, wie gesagt, per Knopp (jButton). Was soll denn in den out.pintlns drinstehen und wo sollen die hin? Ich verstehe nicht ganz, was ich damit erreichen soll.

    Edit: Alles klar, habe grade ein paar System.out.printlns in Schleifen usw. reingeschrieben. Dann habe ich das Programm ausprobiert und es hat tatsächlich alles geklappt. kleinstenRaussuchen() wurde der Anzahl der Notizen entsprechend oft aufgerufen und alles wurde sortiert. Dann habe ich das GUI-Fenster geschlossen und wieder aufgerufen (ich habe absolut nichts am Code verändert), plötzlich hat das nicht mehr geklappt. kleinstenRaussuchen() wurde nur ein mal aufgerufen.

12
  • Javavideokurs
    Videokurs
    Dein Weg zum Java-Profi!
    25 Stunden geballtes Java Know-How.

    Videokurs

  • Ähnliche Themen zu ArrayList sortieren
    1. ArrayList<ArrayList<Integer>> sortieren
      Von sheddy im Forum Java Basics - Anfänger-Themen
      Antworten: 3
      Letzter Beitrag: 02.10.2013, 12:42
    2. ArrayList sortieren...
      Von AnfängerinTanja im Forum Java Basics - Anfänger-Themen
      Antworten: 5
      Letzter Beitrag: 05.01.2012, 15:32
    3. ArrayList<ArrayList> sortieren - hilfe bei Comperator
      Von ne0n2005 im Forum Java Basics - Anfänger-Themen
      Antworten: 6
      Letzter Beitrag: 04.04.2010, 15:28
    4. ArrayList sortieren
      Von njoerd im Forum Allgemeine Java-Themen
      Antworten: 10
      Letzter Beitrag: 17.04.2007, 14:01
    5. ArrayList sortieren
      Von magic_halli im Forum Java Basics - Anfänger-Themen
      Antworten: 7
      Letzter Beitrag: 14.09.2006, 11:21
    Sie betrachten gerade ArrayList sortieren