“==”和equals()的区别

"=="和equals()的区别

要了解两者之间的区别,首先要知道基本数据类型和引用数据类型>

八大基本数据类型

char,boolean,byte,short,int,long,double,float,这八种数据变量中直接存储值
八大基本数据类型对应着各自的封装类型的包装类,提供了更多的方法,且不进行初始化时值默认为空(基本数据类型必须初始化),并且属于引用类型

引用类型

引用类型主要是一些类、接口、数组
引用类型变量中存储的是
地址**,对应的地址存储数据

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

"=="比较基本数据类型时比较的是表面值内容,而比较两个对象时比较的时两个对象的内存地址值,对于equals()方法,首先要注意的是它不能够作用于基本数据类型的变量,若没有对equals()方法进行重写,则其比较的是引用类型的变量所指向的对象的地址;若对其进行重写,则比较的是引用类型的变量所指向对象的内容

简单概括就是

==在基本数据类型中比较的是:值内容,引用类型时:地址
equals()重写时比较的是:值内容;未重写时比较的是:地址
其中equals()只作用于引用类型中

posted @ 2022-05-14 10:06  湖里小鲨鱼  阅读(39)  评论(0)    收藏  举报