que necesita para implementar la interfaz comparables
implements Comparable
el método que hace el trabajo es
public int compareTo(Object obj)
{
}
Tenga en cuenta que objeto a menudo se sustituye por un lleno en el tipo a causa de sintaxis genérica que se puede usar en la instrucción de implementaciones (que se muestra a continuación).
Un ejemplo completo es here in the tutorial docs esperanza esto ayuda
un ejemplo completo (tomar desde el enlace anterior es la siguiente), he añadido este acaso el enlace se agota en algún momento
import java.util.*;
public class Name implements Comparable<Name> {
private final String firstName, lastName;
public Name(String firstName, String lastName) {
if (firstName == null || lastName == null)
throw new NullPointerException();
this.firstName = firstName;
this.lastName = lastName;
}
public String firstName() { return firstName; }
public String lastName() { return lastName; }
public boolean equals(Object o) {
if (o == null || !(o instanceof Name))
return false;
Name n = (Name) o;
return n.firstName.equals(firstName) && n.lastName.equals(lastName);
}
public int hashCode() {
return 31*firstName.hashCode() + lastName.hashCode();
}
public String toString() {
return firstName + " " + lastName;
}
public int compareTo(Name n) {
int lastCmp = lastName.compareTo(n.lastName);
return (lastCmp != 0 ? lastCmp : firstName.compareTo(n.firstName));
}
}
el código de cliente del artículo es:
import java.util.*;
public class NameSort {
public static void main(String[] args) {
Name nameArray[] = {
new Name("John", "Smith"),
new Name("Karl", "Ng"),
new Name("Jeff", "Smith"),
new Name("Tom", "Rich")
};
List<Name> names = Arrays.asList(nameArray);
Collections.sort(names);
System.out.println(names);
}
}
¿Su profesor desea usted para implementar el algoritmo de ordenación ti mismo? –
lo que @joncarl dice es un buen punto, si es así, debe considerar bubblesort (es bastante fácil de implementar pero no tan rápido) –
Sí, implementaré la inserción sort alg. – user1253201