Java中equals与 “==” 的区别

首先我们要掌握基本数据类型和引用类型的概念

基本数据类型:

byte,short,int,long,float,double,boolean,char

基本的八大数据类型都各自封装着包装类,提供了更多的方法,并且都是引言类型

引用类型:

引用类型主要是一些类、接口、数组。

引用类型变量中主要存储的是地址,对应的地址存档数据

“==”和equals()方法的区别和联系

“==”比较基本数据类型时比较的是表面值,比较两个对象的是和比较的是两个对象的内存地址值。

对于equals()方法,基本数据类型没有equals()方法

如果没有对equals()方法进行重写,则比较的是引用类型的变量所指向的对象的地址

比如String、Date等类对equals()进行重写的话,比较的就是所指向的对象内容了。

概括:

== 在基本数据类型中比较:值,引用类型中:地址

equals()重写:值 ,equals()不重写:地址

你可能感兴趣的:(java,jvm,开发语言)