概述
概念:
-
== : 该操作符生成的是一个boolean结果,它计算的是操作数的值之间的关系
-
equals : Object 的 实例方法,比较两个对象的content是否相同
-
hashCode : Object 的 native方法 , 获取对象的哈希值,用于确定该对象在哈希表中的索引位置,它实际上是一个int型整数
二、关系操作符 ==
1、操作数的值
基本数据类型变量
在Java中有八种基本数据类型:
-
浮点型:float(4 byte), double(8 byte)
-
整型:byte(1 byte), short(2 byte), int(4 byte) , long(8 byte)
-
字符型: char(2 byte)
-
布尔型: boolean(JVM规范没有明确规定其所占的空间大小,仅规定其只能够取字面值”true”和”false”)
对于这八种基本数据类型的变量,变量直接存储的是“值”。因此,在使用关系操作符 == 来进行比较时,比较的就是“值”本身。要注意的是,浮点型和整型都是有符号类型的(最高位仅用于表示正负,不参与计算【以 byte 为例,其范围为 -2^7 ~ 2^7 - 1,-0即-128】),而char是无符号类型的(所有位均参与计算,所以char类型取值范围为0~2^16-1)。
引用类型变量
在Java中,引用类型的变