Teaching‎ > ‎

Exemplo Comparator x Comparable

================================Main.java
import java.util.ArrayList;
import java.util.Collections;

public class Main {

public Main() {

ArrayList<Cachorro> l = new ArrayList<>();

for (int i = 0; i < 10; i++) {
l.add(new Cachorro((int) (Math.random() * 10)));
}

System.out.println(l);

Collections.sort(l, new CachorroComparator());
// Collections.sort(l);//para esta linha funcionar voce precisa implementar a interface Comparable na classe Cachorro

System.out.println(l);
}

public static void main(String[] args) {
new Main();
}
}
===========================================

====================================Cachorro.java

public class Cachorro {//implements Comparable<Cachorro>{
private int idade;
public Cachorro(int idade){
this.idade = idade;
}

public int getIdade() {
return idade;
}
public String toString() {
return "Cachorro, idade:"+idade;
}

// @Override
// public int compareTo(Cachorro o) {
// return idade - o.getIdade();
// }
}
===========================================

=====================================CachorroComparator.java
import java.util.Comparator;


public class CachorroComparator implements Comparator<Cachorro> {

@Override
public int compare(Cachorro o1, Cachorro o2) {
return o1.getIdade() - o2.getIdade();
}
}
======================================
Comments