java中 equals和==区别

一、java当中的数据类型和“==”的含义:

  • 基本数据类型(也称原始数据类型) :byte,short,char,int,long,float,double,boolean。他们之间的比较,应用双等号(==),比较的是他们的值。
  • 引用数据类型:当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址(确切的说,是堆内存地址)。

注:对于第二种类型,除非是同一个new出来的对象,他们的比较后的结果为true,否则比较后结果为false。因为每new一次,都会重新开辟堆内存空间。

 

 

总结:一般数据类型比较数值是否相等,引用数据类型比较的是对象地址(比较地址无意义,比较数值需要重写equals方法)

 

posted on 2019-02-28 16:10  向往蓝天的伟  阅读(156)  评论(0编辑  收藏  举报