Colecoes
Comparable
Implementando a Interface Comparable
Java Collections - Comparable
A interface Comparable
é uma parte fundamental do framework de coleções em Java. Ela permite que objetos de uma classe sejam comparados entre si e ordenados de acordo com uma ordem natural.
Vamos criar um exemplo simples utilizando a classe Pessoa
. Suponha que queremos ordenar uma lista de pessoas pelo seu nome.
import java.util.*;
public class Pessoa implements Comparable<Pessoa> {
String nome;
Integer idade;
public Pessoa(String nome, Integer idade) {
this.nome = nome;
this.idade = idade;
}
public String getNome() {
return nome;
}
public Integer getIdade() {
return idade;
}
public String toString() {
return "Pessoa{" +
"nome='" + nome + '\'' +
", idade=" + idade +
'}';
}
public int compareTo(Pessoa outraPessoa) {
return this.nome.compareTo(outraPessoa.getNome());
}
}
No exemplo acima, a classe Pessoa implementa a interface Comparable
, fornecendo uma implementação para o método compareTo
. Este método compara as pessoas com base em seus nomes. Ao chamar Collections.sort(pessoas), a lista de pessoas é ordenada pelo nome.
✔️ Conclusão
A interface Comparable é útil quando queremos definir uma ordem natural para os objetos de uma classe, facilitando a ordenação e a comparação em diversas situações.
A interface Comparable é útil quando queremos definir uma ordem natural para os objetos de uma classe, facilitando a ordenação e a comparação em diversas situações.