首页 > 知识问答文章正文

java中equals和==的区别是什么

知识问答 2022-02-22 17:56:05 admin

刚开始学习Java中字符串的比较时,可能会对==和equals比较迷茫,今天我就通过一个小例子来简单说明一下equals和==的区别。

工具/材料

eclipse

操作方法

【步骤01】

首先,定义两个String类变量a和b,然后,把字符串“mimi”赋值给变量a和b。
我们给a赋值的时候就会在内存分配一个地址存放“mimi”。而再次给b赋值的时候,因为内存中已经存在了“mimi”,所以a和b指向的是同一个地址。
而使用new来创建对象“mimi”,就会重新在内存中分配一个地址。
也就是说a和b指向的地址一样,a和c指向的地址不一样。

【步骤02】

接着我们使用输出方法来判断一下他们之间的真假。

【步骤03】

点击工具栏中的运行按钮运行Java程序。

【步骤04】

如图,运行之后,控制台就会出现结果。

【步骤05】

为了更直观,我把结果放到旁边,方便进行讲解。
a==b结果为true(真),而a==c,b==c结果都为false(假),之前说过,a和b地址一样,可见对于比较字符串时,==比较的是地址。
而a.equals(b)和a.equals(c)结果都是true,所以比较字符串时,equals比较的是字符串内容而不是地址。

标签:

发表评论

评论列表

可盼网Copyright @ 2011-2024 All Rights Reserved. |版权所有 备案号: 豫ICP备2022006457号-8