import java.util.*;
public class FichaTester {
    private List<Ficha> fichas;
    public static final int MAX_NUM = 6;
    public static final int NUM_FICHAS = 10;
    public FichaTester() {
        fichas = new ArrayList<Ficha>(); // Constructor de ArrayList<E>
        for (int i = 0; i < NUM_FICHAS; i++) {
            int a = (int) (Math.random() * MAX_NUM);
            int b = (int) (Math.random() * MAX_NUM);
            fichas.add(new Ficha(a, b));
        }
    }
    public void playingWithSort() {
        System.out.println(fichas); // Usa Ficha.toString()
        System.out.println("Sin ordenar:\n" + this);   // Usa FichaTester.toString()
        Collections.sort(fichas);
        System.out.println("sort():\n" + this);
        Collections.sort(fichas, Collections.reverseOrder());
        System.out.println("reverseOrder:\n" + this);
    }
    @Override
    public String toString() {
        String s = "";
        s += "fichas(" + fichas.size() + "): ";
        for (Ficha f : fichas) {
            s += f;
        }
        return s;
    }
    public static void main(String[] args) {
        FichaTester d = new FichaTester();
        d.playingWithSort();
    }
}
/*
Fijaros que 2:5| > 3:4| == 4:3| por Ficha.compareTo()
run:
[3:4|, 1:0|, 4:2|, 3:0|, 4:3|, 2:5|, 5:5|, 2:0|, 2:1|, 2:2|]
fichas(10): 3:4|1:0|4:2|3:0|4:3|2:5|5:5|2:0|2:1|2:2|
fichas(10): 1:0|2:0|2:1|2:2|3:0|4:2|3:4|4:3|2:5|5:5|
fichas(10): 5:5|2:5|3:4|4:3|4:2|3:0|2:2|2:1|2:0|1:0|
BUILD SUCCESSFUL (total time: 0 seconds)
*/