[Java] [Clase común] Comparable Comparador Comparador Comparador Interfaz

Necesitamos ordenar los objetos, pero los objetos no son valores numéricos específicos como los tipos básicos.

Si desea comparar objetos, debe implementar cualquiera de las dos interfaces Comparable Comparable Comparable Comparator Comparator Interface

 

String wrapper, etc., implementa la interfaz Comparable y anula el método CompareTo ()

Reescribir comparación con analogía es igual al método de reescritura, obtener el contenido de los atributos para comparar

Ordenamiento natural

- this.field> obj.field 返回 +

-esto <obj.field devuelve-

- this.field == obj.field 返回 0

 

La clasificación de clases personalizada también implementa la interfaz Comparable y anula el método CompareTo ()

Clasificación personalizada

La clase personalizada tiene múltiples atributos

Cuando los atributos del juicio principal son los mismos y no se pueden comparar

Se pueden superponer múltiples juicios de atributos, es decir, el mismo int es más del doble y el mismo carácter es más que String,

- this.field == obj.field 再 判断 this.field2 和 obj.field2

 

 

Comparador de clasificación personalizada, comparador

Reescribe el método de comparación para comparar el tamaño del objeto

Número positivo o1> o2

Número negativo o1 <o2

0 o1 == o2

 

¿Diferencia comparable y comparativa?

Comparable es adecuado para establecer un método de clasificación fijo

El comparador se utiliza para personalizar temporalmente la clasificación, el método de clasificación es más flexible

 

Supongo que te gusta

Origin www.cnblogs.com/mindzone/p/12734895.html
Recomendado
Clasificación