La méthode
equals compare les valeurs des objets Java pour l'égalité. Ses principes de fonctionnement comprennent : (1) une comparaison de références pour déterminer si les objets se trouvent dans le même emplacement mémoire ; (2) une comparaison de classes pour vérifier si les types d'objets sont les mêmes (3) une comparaison de champs pour comparer les valeurs de champ une par une ; Afin de comparer correctement les objets personnalisés, la méthode égale doit être remplacée, en suivant les directives de réflectivité, de symétrie, de transitivité, de cohérence et de gestion des valeurs nulles. La méthode égale diffère de l'opérateur == en ce sens qu'elle compare uniquement les références d'objet, tandis que la méthode égale compare les valeurs réelles des objets.
La signification d'égaux en Java
equals est une méthode en Java utilisée pour comparer si deux objets sont égaux. Il s'agit d'une méthode d'instance remplacée par la classe Object
qui est utilisée pour déterminer si deux objets ont la même valeur. Object
类的实例方法,用于确定两个对象是否具有相同的值。
equals 方法的工作原理
当调用 equals
方法时,它会执行以下步骤:
equals
方法会检查它们是否是同一类。如果不是,则对象不相等。equals
方法会比较它们的字段。它会逐个比较字段值,如果所有字段值都相等,则对象相等。重写 equals 方法
为了使自定义对象能够正确比较,需要重写 equals
方法。重写时应遵循以下准则:
a.equals(b)
为 true
,则 b.equals(a)
也应该为 true
。a.equals(b)
为 true
,并且 b.equals(c)
为 true
,则 a.equals(c)
也应该为 true
。equals
方法在每次调用时都应返回相同的结果。equals
方法应正确处理空值。equals 和 == 的区别
==
运算符用于比较两个对象的引用是否相等,而 equals
方法用于比较两个对象的实际值是否相等。对于基本类型(如 int
或 double
),==
和 equals
运算符的行为相同。但是,对于对象类型(如 String
或 Date
),==
仅比较对象引用,而 equals
equals
est appelée, elle effectue les étapes suivantes : 🎜equals
vérifie s'ils sont de la même classe. Sinon, les objets ne sont pas égaux. equals
comparera leurs champs. Il compare les valeurs des champs une par une et si toutes les valeurs des champs sont égales, les objets sont égaux. equals
. Les directives suivantes doivent être suivies lors du remplacement : 🎜a.equals(b)
est true
, alors b.equals(a)
devrait être également true
. a.equals(b)
est true
, et b.equals(c)
est true
, alors a.equals(c)
doit également être true
. equals
doit renvoyer le même résultat à chaque fois qu'elle est appelée. equals
doit gérer correctement les valeurs nulles. ==
est utilisée pour comparer si les références de deux objets sont égales, tandis que equals code> La méthode est utilisée pour comparer si les valeurs réelles de deux objets sont égales. Pour les types primitifs (tels que <code>int
ou double
), les opérateurs ==
et equals
se comportent de la même manière. Cependant, pour les types d'objet (tels que String
ou Date
), ==
compare uniquement les références d'objet, alors que est égal à
méthode La valeur de l'objet de comparaison. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!