Maison > Java > Javacommencer > le corps du texte

Analyse des opérations comparatives de == et égal en Java

王林
Libérer: 2020-11-17 15:11:33
avant
2341 Les gens l'ont consulté

Analyse des opérations comparatives de == et égal en Java

Analyse comparative :

(Partage de vidéos d'apprentissage : cours java)

== : Sa fonction est de juger deux Les adresses des deux objets sont-elles égales ? Autrement dit : déterminer si deux objets sont le même objet. (Les types de données de base comparent les valeurs et les types de données de référence == comparent les adresses mémoire).

equals() : Sa fonction est également de déterminer si deux objets sont égaux. Mais elle a généralement deux cas d'utilisation, comme suit :

Cas 1 : La classe ne couvre pas la méthode equals(). Ensuite, comparer deux objets de cette classe via equals() équivaut à comparer les deux objets via ==.

Cas 2 : La classe remplace la méthode equals(). Généralement, nous remplaçons la méthode equals() pour garantir que les contenus des deux objets sont égaux ; si leurs contenus sont égaux, true est renvoyé (c'est-à-dire que les deux objets sont considérés comme égaux).

Exemple de code :

public class test1 {
	public static void main(String[] args) {
		String a = new String("ab"); // a 为一个引用
		String b = new String("ab"); // b 为另一个引用,对象的内容一样
		String aa = "ab"; // 放在常量池中
		String bb = "ab"; // 从常量池中查找
		if (aa == bb) // true
		System.out.println("aa==bb");
		if (a == b) // false,非同一对象
		System.out.println("a==b");
		if (a.equals(b)) // true
		System.out.println("aEQb");
		if (42 == 42.0) // true
		System.out.println("true");
	}
}
Copier après la connexion

La méthode égale de String a été remplacée, car la méthode égale de l'objet compare l'adresse mémoire de l'objet, tandis que la méthode égale de String compare la valeur de l'objet. Lors de la création d'un objet de type String, la machine virtuelle recherche dans le pool de constantes s'il existe un objet existant avec la même valeur que celui à créer, et si c'est le cas, l'assigne à la référence actuelle. Sinon, recréez un objet String dans le pool de constantes.

Recommandations associées : Démarrez avec Java

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!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!