Maison > Java > JavaBase > le corps du texte

Vous devez connaître la différence entre '==' et equals() en java

coldplay.xixi
Libérer: 2021-01-18 17:20:37
avant
2717 Les gens l'ont consulté

Aujourd'hui, nous discutons de la différence entre "==" et equals() en Java

Vous devez connaître la différence entre '==' et equals() en java

Apprendre Recommandé : bases de Java

== : L'opérateur relationnel

   在基本数据类型中比较两个值的内容是否相等
   
   在引用类型型中比较的是两个对象的地址是否相等
Copier après la connexion

equals() est une méthode de la classe Object

L'utilisation spécifique de
1.基本数据类型无法使用equals()方法

2.在引用类型中若是没有重写Object类时,则默认使用Object类的equals方法,则仍然
利用“==”比较两个对象的内存地址,若是重写Object类的equals方法,则调用子类重写后		  
的方法可以进行内容或值的比较

例如字符串中,equals()方法重写Object类的equals()方法,从而可以直接比较字符串的
内容。(可以自行观察字符串equals()源代码,此处不细讲)
Copier après la connexion

"==", le code est le suivant :

package Test01;//"=="的具体实例public class Demo02 {
	public static void main(String[] args) {
		int a1=10;
		int a2=10;
		String str1=new String("aaa");  //在堆中开辟了新的空间,从而内存地址不相等
		String str2=new String("aaa");
		//比较基本数据类型
		System.out.println(a1==a2);
		//引用数据类型
		System.out.println(str1==str2);
	}}
Copier après la connexion

Résultat :
Vous devez connaître la différence entre == et equals() en java


est égal à l'utilisation, le code est comme suit :
1 , créez un objet, appelez la méthode equals() de la classe Object, comparez l'adresse mémoire

package Test01;//equals()的具体实现package Test01;//Object类的equals()方法public class Demo02{
	public static void main(String[] args) {
		Demo03 demo=new Demo03("aaa");
		Demo03 demo1=new Demo03("aaa");
		System.out.println(demo.equals(demo1));
		
	}}class Demo03 {
	public String str;
	public Demo03(String str){
		this.str=str;
	}
	public String getStr() {
		return str;
	}}
Copier après la connexion

et le résultat est :
Vous devez connaître la différence entre == et equals() en java
2. Pour Par exemple, dans une chaîne, la méthode equals() remplace Object. La méthode equals() de la classe permet de comparer directement le contenu des chaînes.

package Test01;//equals()的在字符串中的方法重写public class Demo02{
	public static void main(String[] args) {
		String str1=new String("aaa");
		String str2=new String("aaa");
		System.out.println(str1.equals(str2));
	}}
Copier après la connexion

Le résultat est :
Vous devez connaître la différence entre == et equals() en java
Résumé :

1 "==" compare les valeurs dans les types de données de base et compare les adresses mémoire dans les types de référence<.>

2.

ne peut pas être utilisé dans les types de données de baseequals() Type de référence : si les objets sont directement comparés, la méthode equals() de la classe Object est appelée. peut remplacer la méthode de la classe Object equals().
(méthode Equals() de la classe String)

Aujourd'hui, c'est ce que je veux partager avec vous S'il y a des erreurs, veuillez me corriger, merci

<.>Recommandations d'apprentissage gratuites associées :

Tutoriel de base 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