Wie vergleicht Comparable

Status
Nicht offen für weitere Antworten.

frau-u

Aktives Mitglied
Hi,

Ich bilde mich gerade über das Interface Comparable fort. Soweit ist auch alles klar, allerdings gibt es da etwas, was ich nicht ganz verstehe. Es ist ein Beispiel aus einem Buch:

Code:
public class Listing0907
{
  public static Object getSmallest(Comparable[] objects)
  {
    Object smallest = objects[0];
    for (int i = 1; i < objects.length; ++i) {
      if (objects[i].compareTo(smallest) < 0) {
        smallest = objects[i];
      }
    }
    return smallest;
  }
  public static void bubbleSort(Comparable[] objects)
  {
    boolean sorted;
    do {
      sorted = true;
      for (int i = 0; i < objects.length - 1; ++i) {
        if (objects[i].compareTo(objects[i + 1]) > 0) {
          Comparable tmp = objects[i];
          objects[i] = objects[i + 1];
          objects[i + 1] = tmp;
          sorted = false;
        }
      }
    } while (!sorted);
  }
  public static void main(String[] args)
  {
    //Erzeugen eines String-Arrays
    Comparable[] objects = new Comparable[4];
    objects[0] = "STRINGS";
    objects[1] = "SIND";
    objects[2] = "PAARWEISE";
    objects[3] = "VERGLEICHBAR";

    //Ausgeben des kleinsten Elements
    System.out.println((String)getSmallest(objects));
    System.out.println("--");

    //Sortieren und Ausgaben
    bubbleSort(objects);
    for (int i = 0; i < objects.length; ++i) {
      System.out.println((String)objects[i]);
    }
  }
}


Dabei wird "objects[2] = "PAARWEISE";" als smallest ausgegeben, obwohl das natürlich (aus rein menschlicher Sicht) nicht das kleinste Objekt ist.
Woran liegt das?

Thx.
 
R

Roar

Gast
uff... strings comparable implemenaatierung vergleich lexiographisch. "P" kommt vor "S" und "V" also is Paarweise das kleinste element
 

frau-u

Aktives Mitglied
Roar hat gesagt.:
uff... strings comparable implemenaatierung vergleich lexiographisch. "P" kommt vor "S" und "V" also is Paarweise das kleinste element

Ahhh.... *andenkopfschlag*.
Hab die ganze Zeit gedacht, es hätte etwas mit der Länge (also Anzahl der Zeichen oder so) zu tun.

Danke für die schnelle Antwort.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G If-Abfrage, die nur einen Teil eines Strings vergleicht Java Basics - Anfänger-Themen 3
J HashSet mit Comparable sortieren Java Basics - Anfänger-Themen 13
J Interface Comparable<T> Java Basics - Anfänger-Themen 10
L Interface & Comparable Java Basics - Anfänger-Themen 15
I Generics und Comparable Java Basics - Anfänger-Themen 14
O Comparable Generic Java Basics - Anfänger-Themen 24
R Quicksort mit Interface Comparable Java Basics - Anfänger-Themen 6
Kornblume Comparable Interface für Objektvergleiche nutzen Java Basics - Anfänger-Themen 15
C Was macht `public class ClassName<T extends Comparable<T>>`? Java Basics - Anfänger-Themen 14
N Comparable bzw Comparator Java Basics - Anfänger-Themen 5
M Generische Liste aus Comparable-Objekten Java Basics - Anfänger-Themen 6
R Interface Eigene Objekte in Listen sortieren mit Interface Comparable Java Basics - Anfänger-Themen 5
K Comparable - Objekte aus Array vergleichen und größtes auswählen Java Basics - Anfänger-Themen 1
Shizmo Frage zu Comparable Java Basics - Anfänger-Themen 4
L LinkedList Comparable < > MEHRFACH implementieren? Java Basics - Anfänger-Themen 3
N Datentypen LocalDate Generic Comparable Java Basics - Anfänger-Themen 2
S Generics und Comparable Interface Java Basics - Anfänger-Themen 5
N Compiler-Fehler Comparable / compareTo implementierung Java Basics - Anfänger-Themen 2
F Comparable mit String Java Basics - Anfänger-Themen 5
M Comparable und Comparator nicht ganz klar Java Basics - Anfänger-Themen 1
F Objekte sortieren mit Comparable Java Basics - Anfänger-Themen 9
R Mehrere Interfaces(Comparable, ...) Java Basics - Anfänger-Themen 2
B Comparable & Comparator Java Basics - Anfänger-Themen 9
C Comparable Interface Java Basics - Anfänger-Themen 8
T Interface Interface Comparable Problem... Java Basics - Anfänger-Themen 2
H Interface Comparable Verständnisfrage Java Basics - Anfänger-Themen 6
B Object "Method" in TreeSet, Fehler beim Vergleichen/Comparable Java Basics - Anfänger-Themen 9
pg1337 Interface Comparable-Interface bei HashMap Java Basics - Anfänger-Themen 21
J Probleme mit Comparable, compareTo() Java Basics - Anfänger-Themen 2
A Comparable interface Java Basics - Anfänger-Themen 26
I Interface Comparable für Server-Item-Interface Java Basics - Anfänger-Themen 12
P Comparable und Generics Java Basics - Anfänger-Themen 6
S comparable und equals Java Basics - Anfänger-Themen 7
S Unterschied Comparable und Comparator Java Basics - Anfänger-Themen 2
M Frage zum Interface Comparable Java Basics - Anfänger-Themen 3
S Comparable Java Basics - Anfänger-Themen 4
H Comparable und Comparator Java Basics - Anfänger-Themen 22
S instanceof Comparable...geht nicht? Java Basics - Anfänger-Themen 20
M comparable funktion & reverse funktion Java Basics - Anfänger-Themen 8
H Mehrere Comparable Java Basics - Anfänger-Themen 4
S Comparator / Comparable ? Java Basics - Anfänger-Themen 3
D Comparable - Bucketsort / Radixsort? Java Basics - Anfänger-Themen 2
B Mehrere Werte mit Comparable sortieren Java Basics - Anfänger-Themen 14
S String umwandeln in Comparable Java Basics - Anfänger-Themen 6
R Comparable Interface Funktionalität selbst programmieren? Java Basics - Anfänger-Themen 3
A Interface Comparable Java Basics - Anfänger-Themen 2
J Comparable Java Basics - Anfänger-Themen 9
D Frage zu Collection.sort bzw. Comparator u. Comparable Java Basics - Anfänger-Themen 2
B Wann Comparator und wann Comparable Java Basics - Anfänger-Themen 6
M Comparable - Bedingung erzwingen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben