java - descending - ¿Por qué Arrays.sort toma Object[] en lugar de Comparable[]?
sort arraylist object java (2)
De lo contrario no puedes pasar Object[]
in.
Me preguntaba por qué el método de clasificación de la clase Arrays está solicitando un parámetro de tipo Object []. Por qué el parámetro no es del tipo Comparable []. Si no pasa un Comparable [], está generando una ClassCastException.
¿Por qué ... la ordenación estática pública vacía (Objeto [] a) y no la ordenación pública estática vacía (Comparable [] a) ? Gracias
Porque la segunda forma requeriría una reasignación de la matriz. Incluso si sabe que su matriz solo contiene comparables, no puede simplemente convertirla en Comparable [] si el tipo original era Objeto [], ya que el tipo de matriz no coincide.
Tu puedes hacer:
Object[] arr = new String[0];
String[] sarr = (String[]) arr;
Pero no puedes hacer:
Object[] arr = new Object[0];
String[] sarr = (String[]) arr;
Así que es una optimización prematura :)