为了账号安全,请及时绑定邮箱和手机立即绑定

equals的疑惑

class test{
    public static void main(String[] args) {
        String a = "1";
        String b = "1";
        System.out.println(a.equals(b));
    }    
}

这段代码中.为什么会输出true呢 它们的值一样的.但是那个哈希码也是一样的吗

正在回答

2 回答

String类特殊的,当创建一个String的实例后,这个值会保存在一个叫做存储池的位置,当两个字符串的值相同时,变量名实际会指向同一内存空间。

2 回复 有任何疑惑可以回复我~
#1

阿楠呐 提问者

非常感谢!
2018-08-09 回复 有任何疑惑可以回复我~

b和a指向同一个引用

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530715    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

equals的疑惑

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信