“==“与“equals“的区别

"=="与"equals"两个都是以boolean形式返回。

"=="一般用于比较整形(byte、short、int、long)与字符形变量(char)。

"equals"常惯用与字符串与字符串之间的比较。

当用"=="对引用类型变量进行比较,是对变量地址之间的比较:

e.g. String str1="JQK",str2="JQK",str3="jqk".toUpperCase();

System.out.println(str1==str2);

System.out.println(str1==str3);

结果:true

false

观察变量我们可知str1、str2、str3变量的内容都相同,然而返回str1==str3的值却为false

原因是str1与str2所指向的都是同一空间,而str3虽然值与str1、str2相同,但由于"jqk"是一个新字符所以它将重新开辟一块新的空间储存地址,而"=="是进行地址之间的比较,所以str1==str3返回结果为false;

equals是用于字符串之间的比较:e.g. System.out.println(str1.equals(str3)); 返回结果为:true

原因为equals是比较两个变量之间的内容;

由此我们知道在比较变量是否相等时,我们应该先观察变量类型再决定使用equals还是"=="。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雾远望

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值