Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: Java ::: Pacote java.util ::: Comparator

Entenda e aprenda a usar objetos da interface Comparator em suas aplicações Java

Quantidade de visualizações: 2495 vezes
Um objeto da interface Comparator<T>, do pacote java.util, é útil quando precisamos de uma função de comparação para facilitar a ordenação dos objetos de uma coleção. Um Comparator pode ser passado para um método sort (tais como Collections.sort ou Arrays.sort) para permitir um controle preciso sobre a ordem da classificação. Objetos desta interface também podem ser usados para controlar a ordem de certas estruturas de dados (tais como conjuntos ou mapas ordenados - sorted sets ou sorted maps) ou para fornecer uma ordenação para coleções de objetos que não apresentam uma ordem natural.

Para vermos um exemplo da utilidade de um Comparator, comece analisando o trecho de código abaixo:

package estudos;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

// classe que será usada para demonstração do uso de um Comparator
class Pessoa{
  String nome;
  int idade;
  
  // construtor
  public Pessoa(String nome, int idade){
    this.nome = nome;
    this.idade = idade;
  }
}

public class Estudos{
  public static void main(String[] args) {
    // vamos criar uma ArrayList de objetos da classe Pessoa
    ArrayList<Pessoa> pessoas = new ArrayList();
    pessoas.add(new Pessoa("Carlos", 30));
    pessoas.add(new Pessoa("Marcos", 11));
    pessoas.add(new Pessoa("Cintia", 35));
    pessoas.add(new Pessoa("Fernanda", 10));
    pessoas.add(new Pessoa("Igor", 91));
    
    // vamos ordenar os elementos do ArrayList usando o método sort() da classe Collectons


Ao executarmos este código nós teremos o seguinte resultado:

Nome: Fernanda; Idade: 10
Nome: Marcos; Idade: 11
Nome: Carlos; Idade: 30
Nome: Cintia; Idade: 35


Neste exemplo podemos ver que cinco objetos da classe Pessoa foram adicionados no ArrayList. Note que suas idades não estão ordenadas. Porém, após a chamada ao método sort() da classe Collections e fornecendo um objeto Comparator com o critério de ordenação, os elementos do ArrayList são ordenados por idade ascendente (da menor para a maior).

As classes conhecidas e que implementam a interface Comparator são Collator e RuleBasedCollator.

Link para compartilhar na Internet ou com seus amigos:

Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 32 usuários muito felizes estudando em nosso site.