Java 中 equals,hashcode 和==的区别
一、==
java 中的数据类型,可分为两类:
1.基本数据类型,也称原始数据类型
byte,short,char,int,long,oat,double,boolean 他们之间的比较,应用双
等号(==),比较的是他们的值。(
2.引用类型(类、接口、数组)
当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所
以,除非是同一个 new 出来的对象,他们的比较后的结果为 true,否则比较
后结果为 false。
对象是放在堆中的,栈中存放的是对象的引用(地址)。由此可见'=='是
对栈中的值进行比较的。如果要比较堆中对象的内容是否相同,那么就要重写
equals 方法了。(
例:
package com.zju.java.equals;
// "=="号测试