Qual é a diferença entre comparável e comparador em Java
Índice:
o principal diferença entre comparável e comparador em Java é que comparável classifica a coleção com base em um único elemento, enquanto comparador classifica a coleção com base em vários elementos.
Java é uma linguagem de programação de alto nível de uso geral que ajuda a construir vários aplicativos, como web, desktop, celular e sistemas distribuídos de alto desempenho. Além disso, uma das principais vantagens do Java é que ele oferece suporte à Programação Orientada a Objetos (OOP). O paradigma permite a criação de classes e objetos. A classe é uma cópia azul para criar objetos. Além disso, possui membros de dados para descrever as propriedades e métodos para denotar os comportamentos. Além disso, o Java fornece várias interfaces para classificar objetos usando os membros de dados da classe. Comparável e comparador são dois deles.
Comparável, Comparador, Interface, Java
O que é comparável em Java
A interface comparável ajuda a comparar um objeto com outro objeto. A classe implementa a interface java.lang.Comparable para comparar suas instâncias. A primeira etapa é implementar a interface comparável com a classe e, em seguida, substituir o método compareTo () da interface Comparable.
Figura 1: aula do aluno
Figura 2: Programa principal para comparáveis
No programa acima, Student é uma classe que implementa a interface Comparable. Mais importante ainda, a classe Aluno tem três membros de dados: id, nome e marcas. O construtor ajuda a fornecer os valores iniciais aos membros de dados. Além disso, essa classe substitui o método compareTo. O objeto do aluno é passado para este método. Assim, este método retorna 1, -1 ou 0 dependendo da comparação.
No programa principal, “al” é um objeto de ArrayList. Os programadores podem inserir objetos Student nesta ArrayList. O método de classificação classifica os elementos. Finalmente, o “for loop” exibe os elementos no console.
O que é Comparator Java
A interface do comparador é usada para classificar os elementos de uma lista usando diferentes comparadores. Um exemplo de programa é o seguinte.
Figura 3: Comparador de nomes e marcas
Figura 4: Programa principal para comparador
No programa acima, Student é uma classe que implementa a interface Comparable. Além disso, a classe do aluno tem três membros de dados: id, nome e marcas. O construtor ajuda a fornecer valores iniciais aos membros de dados. A classe MarkComparator implementa a interface Comparator. Portanto, ele substitui o método de comparação que aceita dois objetos de Aluno. De acordo com a comparação, o método compare retorna 1, -1 ou 0.
Da mesma forma, há outra classe chamada AgeComparator que implementa a interface Comparator. Ele também substitui o método de comparação. Além disso, este método obtém dois objetos de aluno. Além disso, o método compare retorna o inteiro de acordo com a comparação.
No programa principal, “al” é um objeto de ArrayList. O programador pode inserir objetos Student a este ArrayList, assim como nas linhas 34, 35 e 36. Além disso, na linha 38, os elementos são comparados de acordo com o nome. O “loop for” exibe os elementos na tela. Na linha 43, os elementos são comparados de acordo com a marca. Em seguida, o próximo “loop for” exibe os elementos na tela.
Diferença entre comparável e comparador em Java
Definição
Comparable é uma interface em Java usada para ordenar os objetos da classe definida pelo usuário que fornece sequências de classificação únicas, enquanto Comparator é uma interface em Java usada para ordenar os objetos de uma classe definida pelo usuário que fornece várias sequências de classificação. Portanto, isso explica a principal diferença entre Comparable e Comparator em Java.
Classificar elementos
Além disso, Comparable fornece o método compareTo () para classificar os elementos, enquanto o Comparator fornece o método compare () para classificar os elementos. Portanto, essa também é uma diferença entre Comparable e Comparator em Java.
Sintaxe para classificar
Outra diferença entre Comparable e Comparator em Java é que a sintaxe para classificar em Comparable é Collections.sort (List), enquanto a sintaxe para classificar em Comparator é Collections.sort (List, Comparator)
Conclusão
Em resumo, Comparable e Comparator são duas interfaces para classificar objetos usando os membros de dados da classe. A principal diferença entre Comparable e Comparator em Java é que Comparable classifica a coleção com base em um único elemento, enquanto Comparator classifica a coleção com base em vários elementos.
Referência:
1. “Java Comparable - Javatpoint.” Www.javatpoint.com, disponível aqui.2. “Java Comparator - Javatpoint.” Www.javatpoint.com, disponível aqui.
![Qual é a diferença entre comparável e comparador em Java Qual é a diferença entre comparável e comparador em Java](https://img.books-kingdom.com/images/002/image-4410.jpg)