iguala el uso de método en cadena y la lista

Si Yo :

en la documentación de Oracle Java, es igual a () de la lista dice que dos listas se definen como iguales si contienen los mismos elementos. Pero a partir de clases de objetos iguales () devuelve true sólo si su código hash es igual. Significa equals () de anulaciones lista es igual a método de clase de objeto. Y es igual para los iguales () de cadena. Como siempre que tengan mismos personajes, que devolverá true.

por lo que cada vez que declaro como un tipo de cuerda, o el uso de clases de lista como iguales ArrayList () son anulado automáticamente justo?

Consorcio inactivo :

equals () se reemplaza automáticamente justo?

Respuesta: Sí toda la razón, Si solicita overriden .equals()método se invoca automáticamente en tiempo de ejecución

** clase Object es clase padre para cada clase en Java y que constan de .equals()método que compara las referencias a objetos

Pero Stringla clase, las clases Wrapper (Integer,Long etc..)y Clases Colecciones (ArrayList, hashSet etc..)son anulados .equals()método para comparar el contenido de objeto en lugar de referencias a objetos

Evita a confusiones aquí es el ejemplo claro

public class Main2 {
public static void main(String[] args) {
    List<String> l1 = new ArrayList<>();
    l1.add(new String("hello"));
    List<String> l2 = new ArrayList<>();
    l2.add(new String("hello"));

    System.out.println(l1.equals(l2)); //true

    List<Test> t1 = new ArrayList<>();
    t1.add(new Test());
    List<Test> t2 = new ArrayList<>();
    t2.add(new Test());

    System.out.println(t1.equals(t2)); //false
    }
}

 class Test{
  }

En el ejemplo anterior comparando List<String>devolverá cierto porque .euqals()el método en Stringse anula para comparar el contenido

Pero mientras que en comparación Lits<Test>volverá falsa a pesar de que los dos objetos están vacíos, ya que .equals()el método de Testclase no se anula por defecto se invocará Objectclase .equals()método que compara la referencia de objetos como ==lo hace

Google Pregunta método es igual de clase de objeto compara código hash?

Responder

La clase java.lang.Object requiere que dos objetos que comparan igual utilizando los método equals () debe producir el mismo resultado entero cuando el método hashCode () se invoca en los objetos de la API [2014]. Los equals () se usa el método para determinar la equivalencia lógica entre instances.Feb objeto 12, 2018

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=200311&siteId=1
Recomendado
Clasificación