标题:hashCode() 和 == 的问题?
取消只看楼主
净★星
Rank: 1
来 自:四川
等 级:新手上路
帖 子:14
专家分:8
注 册:2011-6-20
结帖率:0
已结贴  问题点数:20 回复次数:3 
hashCode() 和 == 的问题?
源码:
public class NewTest {
    public static void main(String[] args) {
        String s1 = "test";
        String s2 = new String("test");
        
        System.out.println(s1.hashCode());
        System.out.println(s2.hashCode());
        System.out.println(s1 == s2);
    }
}
运行结果:
3556498
3556498
false
为什么hashCode码相同,而==是false。
搜索更多相关主题的帖子: public false 
2013-09-10 18:14
净★星
Rank: 1
来 自:四川
等 级:新手上路
帖 子:14
专家分:8
注 册:2011-6-20
得分:0 
回复 2楼 peach5460
知道啊,hashCode返回的不是地址吗? == 又是比较的地址,为什么会是false???
2013-09-10 18:54
净★星
Rank: 1
来 自:四川
等 级:新手上路
帖 子:14
专家分:8
注 册:2011-6-20
得分:0 
回复 4楼 peach5460
那为什么hashCode值相等,hashCode值不是内存地址吗?
2013-09-10 19:11
净★星
Rank: 1
来 自:四川
等 级:新手上路
帖 子:14
专家分:8
注 册:2011-6-20
得分:0 
回复 6楼 husiwen
明白了,谢谢!
2013-09-11 13:20



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-420405-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.403315 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved