/* Interfacet vi skal implementere: public interface Comparable { public int compareTo(T otherObj); } Reglene for hva compareTo-metoden skal returnere: < 0 (negativt) hvis va?rt objekt er "mindre" enn det andre = 0 hvis va?rt objekt er "likt" med det andre > 0 (positivt) hvis va?rt objekt er "st?rre" enn det andre */ public class Flaske implements Comparable { // M? implementere Comparable-interfacet ^ private int dl; private String label; public Flaske(int dl, String label) { this.dl = dl; this.label = label; } @Override public int compareTo(Flaske otherObj) { // Dersom dl i Flaske-objektet vi er inni n? (alts? den som vi kaller compareTo p?) // er mindre enn dl i den vi f?r inn som parameter, s? returnerer vi et negativt tall if (dl < otherObj.dl) { return -1; } // ... om dl er st?rre i dette Flaske-objektet s? returnerer vi et positivt tall else if (dl > otherObj.dl) { return 1; } // Om dl er like stor, s? skal flaskene sorteres etter labelen, i alfabetisk rekkef?lge. // For ? f? til dette bruker vi compareTo p? de to label-strengene, som vil gi oss enten 0, // en positiv eller en negativ verdi. // Denne verdien bare returnerer vi, da den forteller hvilken av stringene som er "st?rst" // (dvs. deres alfabetiske rekkef?lge) int verdi = label.compareTo(otherObj.label); return verdi; } @Override public String toString() { return dl + " dl, " + label; } }