Я работаю над проектом Java, где я использую пользовательские объекты (например, человек) в списке. Я заметил, что такие методы, как содержит () или remove (), не ведут себя так, как ожидалось при сравнении объектов. Может ли кто -нибудь объяснить, почему == в этом случае не работает должным образом, и как переоценки равняются () (и hashcode ()) помогают? < /P>
import java.util.*;
class Persona {
String nombre;
public Persona(String nombre) {
this.nombre = nombre;
}
}
public class Prueba {
public static void main(String[] args) {
List lista = new ArrayList();
lista.add(new Persona("Alicia"));
// Esto retorna false
System.out.println(lista.contains(new Persona("Alicia")));
}
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... s-with-cus
Почему содержит () или удалить () сбой при использовании == вместо. Equals () с пользовательскими объектами в Java? [дуб ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
PYSAT Как применить Clausify к объекту Equals при использовании объекта Equals в CNF?
Anonymous » » в форуме Python - 0 Ответы
- 45 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Ошибка матча по каратэ: совпадение не удалось: EQUALS $ | совпадение не удалось: EQUALS
Anonymous » » в форуме JAVA - 0 Ответы
- 45 Просмотры
-
Последнее сообщение Anonymous
-