The difference between equals and == in java
"==" compares two references in Whether the memory points to the same object (that is, the same memory space), that is, whether the storage locations in the memory space are consistent.
equals, commonly used is whether the contents in the object are equal.
The equals method is provided by the Object class and can be rewritten by subclasses (recommended tutorial: java tutorial)
public boolean equals(Object obj) { return (this == obj); }
The default implementation will only return true when the object is compared with itself, which is equivalent to "==" at this time.
Many classes in Java (String class, Date class, File class) have rewritten the equals method. Here is the common String class as an example.
public class Test { public static void main(String[] args) { String num1= "abc"; String num2= "abc"; System.out.println(num1==num2);//true String num3 = new String("abc"); String num4= new String ("abc"); System.out.println(num3==mnum4);//false System.out.println(num3.equals(num4));//true } }
The equals method in Java language is actually left to developers to override, allowing developers to define what conditions two Objects that meet are equal.
It means that the equals method is exactly the same as "=="; but the equals method can be overridden; in the case of "==", if it is a value type, compare whether the values are equal; if it is a reference type, determine the object address are equal.
The above is the detailed content of The difference between equals and == in java. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Mac version
God-level code editing software (SublimeText3)

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Atom editor mac version download
The most popular open source editor