== 和 equals的区别 以及java中基本数据类型和引用数据类型各有什么特点

两者之间的关系

特点:

一、从概念方面来说

基本数据类型:变量名指向具体的数值引用数据类型:变量名指向存数据对象的内存地址,即变量名指向hash值

二、从内存构建方面来说

基本数据类型:变量在声明之后java就会立刻分配给他内存空间

引用数据类型:它以特殊的方式(类似C指针)指向对象实体(具体的值),这类变量声明时不会分配内存,只是存储了一个内存地址

三、从使用方面来说

变量分为基本数据类型 和引用数据类型

1,当变量为基本数据类型时,用== 比较时,通常比较的是值,当变量为引用类型的时候用==比较时,通常比较的是对应的引用的内存地址。

2,对于基本类型而言 是没有equals作比较的, 对于引用数据类型:使用时可以赋null,通常比较的是 内容 或者特征是否 想等。  判断时使用equals方法

原文地址:https://www.cnblogs.com/leiqiannian/p/7922580.html