public static void main(String[] args)
{
char [] d = {'a','b','c','d'};
char [] e = {'d','c','b','a'};
Arrays.sort(d);
Arrays.sort(e);
System.out.println(e); //console : abcd
System.out.println(d); //console : abcd
System.out.println(d.equals(e)); //console : false
}
¿Por qué las matrices son desiguales? Probablemente me esté perdiendo algo, pero me está volviendo loco. ¿No se supone que el resultado es cierto? Y sí, he importado java.util.Arrays.
- Nik
Source¿No se supone que el resultado es verdadero?
No. Estás llamando a equals
en dos referencias de matriz diferentes. Las matrices no anulan equals
, por lo tanto, obtiene la igualdad de referencia. Las referencias no son iguales, por lo tanto devuelve false...
Para comparar los valores de las matrices, utilice Arrays.equals(char[], char[])
.
System.out.println(Arrays.equals(d, e));