java中“==”和equals()方法的区别

本文详细介绍了Java中的基本数据类型和引用数据类型,包括数值型、字符型、布尔型以及类、接口和数组。重点讲解了使用`==`和`.equals()`在不同数据类型间的比较区别,特别是对于字符串String的特殊情况。通过示例代码展示了`==`比较引用地址而`.equals()`比较内容的原理,帮助理解Java中的值比较和引用比较。
摘要由CSDN通过智能技术生成

java的数据类型:

基本数据类型:

        数值型、字符型(char)、布尔型(boolean)。

        数值型又分为整数型(byte、short、int、long)、浮点型(float、double)。

引用数据类型:

        类 (class) 、接口(intface) 、 数组( [ ] )

当比较的是java基本的数据类型时应用(==),比较的是他们值的大小。

当比较的是java引用类型时:

==:比较的是它们在内存中存放的地址。

equals()这个方法初始在objct类中比较的是堆内存中的地址。

但是在String、Intager、Data类中把objct中的这个方法给覆盖了,作用是比较内容是否相同。

如比较string类的讨论:

String a="abcd";

String b="abcd";      

String c=new String("abcd"); //在堆内存中新建内存模块

System.out.println(a==b); //true    a,b应用同意物理内存模块

System.out.println(a.equals(b)); //true

System.out.println(c==b); //false    b,c引用了两个对象

System.out.println(c.equals(b)); //true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值