Wie kann man in einer JList sortieren?

Nico2201

Mitglied
Hallo,

ich bin dabei 3 verschiedene Sortierungsmethoden in mein Projekt in implementieren. Und zwar soll bei der ersten Methode nach den Namen (String), bei der zweiten nach dem Preis (double) und bei der dritten Methode nach dem Datum (unbekannter Wert - vermutlich Date oder sowas?) sortiert werden. Das ganze soll auf einer JList funktionieren. Im Internet habe ich etwas von einem Comparator gelesen, aber um ehrlich zu sein wurde ich da nicht schlauer draus.

Kann mir bitte jemand bei den Sortierungsmethoden helfen? Die dazugehörigen Codes mit Erklärung wäre perfekt. :cool:
 
Lösung
Moin,
Also ist Datum in deiner Entity ein String?
ja, scheint so, da es ja scheinbar funktioniert!

Noch ein Tipp am Rande:
nimm' immer "sprechende Bezeichner"!!
Sonst fliegt Dir möglicherweise sowas hier
Java:
try 
{
    br = new BufferedReader(new FileReader(datei));
    int value = Integer.parseInt(br.readLine());
    for( int i = 0; i < value; i++ )
    {
        String[] s = br.readLine().split("-", 3);   // 's' lokal als Stringarray !!
        String name = s[0];
        String sPreis = s[1];
        String datum = s[2];
        double preis = Double.parseDouble(sPreis);
        model.addElement(new Entity(name, preis, datum));
    }
    liste.setModel(model);
    String s = br.readLine();    // 's' als String...
Ja, ich wollte die Formatierung "dd.mm.yyyy", z.B.: 05.07.2018 haben und mittels String schien mir das am einfachsten zu realisieren. Es funktioniert prima. :)

Es ist grundsätzlich kein Problem ein Datum als String zu speichern, kommt darauf an, was man damit machen will. Wenn du es nur darstellen möchtest - ok. Ich habe aber verstanden, dass du es auch sortieren können möchtest. Da wirst du mit dem Format auf Schwierigkeiten stoßen, denn 04.08.2018 ist alphabetisch kleiner als 05.07.2018.
 
Zurück