Comparison between = and equals in Java

Source: Internet
Author: User

It has been verified as follows:

1. for basic types (only = can be used)
= Comparison value

2. For encapsulation classes of basic types (Boolean, integer, double, long, float)
= Compare address
Equals comparison value

3. for Class objects
= Compare address
Equals comparison value

4. For string
= Compare address
Equals comparison value

The verification code is as follows:

Import java. util. arraylist;

Public class testequals {

Public static void main (string [] ARGs ){
// To validate Basic Data Types
Int INTA = 1;
Int intb = 1;
System. Out. println ("INTA = intb is" + (INTA = intb ));
 
// To validate Wrapper Classes
Integer integera = new INTEGER (1 );
Integer integerb = new INTEGER (1 );
Integer integerc = integera;
System. Out. println ("------------------------------");
System. Out. println ("integera = integerb is" + (integera = integerb ));
System. Out. println ("integera. Equals (integerb) is" + (integera. Equals (integerb )));
System. Out. println ("integera = integerc is" + (integera = integerc ));
System. Out. println ("integera. Equals (integerc) is" + (integera. Equals (integerc )));
 
// To validate ordinary classes
Arraylist <integer> arraylista = new arraylist <integer> ();
Arraylista. Add (integera );
Arraylist <integer> arraylistb = new arraylist <integer> ();
Arraylistb. Add (integera );
Arraylist <integer> arraylistc = arraylista;
System. Out. println ("------------------------------");
System. Out. println ("arraylista = arraylistb is" + (arraylista = arraylistb ));
System. Out. println ("arraylista. Equals (arraylistb) is" + (arraylista. Equals (arraylistb )));
System. Out. println ("arraylista = arraylistc is" + (arraylista = arraylistc ));
System. Out. println ("arraylista. Equals (arraylistc) is" + (arraylista. Equals (arraylistc )));

// To validate string class
String stringa = new string ("123 ");
String stringb = new string ("123 ");
String stringc = stringa;
System. Out. println ("------------------------------");
System. Out. println ("stringa = stringb is" + (stringa = stringb ));
System. Out. println ("stringa. Equals (stringb) is" + (stringa. Equals (stringb )));
System. Out. println ("stringa = stringc is" + (stringa = stringc ));
System. Out. println ("stringa. Equals (stringc) is" + (stringa. Equals (stringc )));
}
}

The execution result is:

INTA = intb is true
------------------------------
Integera = integerb is false
Integera. Equals (integerb) is true
Integera = integerc is true
Integera. Equals (integerc) is true
------------------------------
Arraylista = arraylistb is false
Arraylista. Equals (arraylistb) is true
Arraylista = arraylistc is true
Arraylista. Equals (arraylistc) is true
------------------------------
Stringa = stringb is false
Stringa. Equals (stringb) is true
Stringa = stringc is true
Stringa. Equals (stringc) is true

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.