Para este caso, é necessário definir a classe Table como implementando Comparable.
Ficheiro Table.java |
---|
{{{2}}} |
Diagrama de classes |
---|
(por lapso, o diagrama UML omite o método contains, mas o resto está correcto)
|
Notar que as classes internas são static e que apenas estão contidas na classe Table por conveniência de ocultação de código.
Ficheiro Table.java |
---|
{{{2}}} |
(a publicar)
<java5> /**
* Sample uses. */
public class Application {
/** * @param args */ public static void main(String[] args) { Table t1 = new Table(3); // table with 3 integers Table t2 = new Table(3); // table with 3 integers
t1.setAll(3); t2.setAll(90);
System.out.println(t1.compareTo(t2)); // <0 System.out.println(Table.MAX_COMPARATOR.compare(t1, t2)); // <0 System.out.println(Table.MAX_COMPARATOR.compare(t1, t1)); // 0 System.out.println(Table.MAX_COMPARATOR.compare(t2, t2)); // 0 System.out.println(Table.MAX_COMPARATOR.compare(t2, t1)); // >0 System.out.println(Table.LENGTH_COMPARATOR.compare(t1, t2)); // 0 (same length)
}
} </java5>[[category:PO Exemplos]