<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    咖啡伴侶

    呆在上海
    posts - 163, comments - 156, trackbacks - 0, articles - 2

    Hash code

    Posted on 2010-03-03 16:03 oathleo 閱讀(1681) 評(píng)論(4)  編輯  收藏 所屬分類: Java
    如果兩個(gè)對(duì)象equal,那么它們的hashCode值一定要相同;2、如果兩個(gè)對(duì)象的hashCode相同,它們并不一定equal

    當(dāng)Set要添加新的元素時(shí),先調(diào)用這個(gè)元素的hashCode方法,就一下子能定位到它應(yīng)該放置的物理位置上。如果這個(gè)位置上沒有元素,它就可以直接存儲(chǔ)在 這個(gè)位置上,不用再進(jìn)行任何比較了;如果這個(gè)位置上已經(jīng)有元素了,就調(diào)用它的equals方法與新元素進(jìn)行比較,相同的話就不存了,不相同就散列其它的地址。

    所以兩個(gè)不equal的對(duì)象,有相同的hash,是可以存進(jìn)Set的。

    class HashNode {
        int id;
       
        public HashNode(int id){
            this.id = id;
        }
       
        public int hashCode() {
            return id;
        }
       
        public boolean equals(Object obj) {
            return false;
        }
    }

    public class HashTest {

        public static void main(String[] args) {
            HashNode n1 = new HashNode(1);
            HashNode n2 = new HashNode(1);
           
            HashMap map = new HashMap();
            map.put(n1, "111");
            map.put(n2, "222");
           
            System.out.println(n1.equals(n2));
            System.out.println(n1.hashCode() == n2.hashCode());
            System.out.println(map.keySet().size());
        }

    }

    Feedback

    # re: Hash code  回復(fù)  更多評(píng)論   

    2010-03-16 21:42 by 張貝貝
    比較兩個(gè)對(duì)象是不是得重寫equals方法啊?

    # re: Hash code  回復(fù)  更多評(píng)論   

    2010-03-17 08:41 by oathleo
    @張貝貝
    比較 是指?如果是內(nèi)容的比較 肯定是要重寫了。這種情況也是最常見的。
    當(dāng)然如果單純比較 內(nèi)存地址(或者說對(duì)象引用本身) 就沒有必要了

    # re: Hash code  回復(fù)  更多評(píng)論   

    2010-03-17 20:31 by 張貝貝
    嗯,很對(duì),再問一點(diǎn),內(nèi)存地址一樣,是不是內(nèi)容就一定一樣了?

    # re: Hash code  回復(fù)  更多評(píng)論   

    2010-03-18 18:24 by oathleo
    @張貝貝
    門牌號(hào)一樣,房子里面的人必然的一樣。
    主站蜘蛛池模板: 日韩免费a级毛片无码a∨ | a级特黄毛片免费观看| 亚洲精品夜夜夜妓女网| 蜜桃AV无码免费看永久| 亚洲成AV人片在WWW| 国产AV无码专区亚洲AVJULIA| 美女被免费视频网站a| 亚洲Av永久无码精品三区在线| 青青草国产免费久久久下载| 免费国产va在线观看| 国产一级理论免费版| 亚洲免费在线播放| 国内精品免费久久影院| 亚洲第一精品电影网| 成年午夜视频免费观看视频 | 午夜免费福利在线观看| 国产精品无码永久免费888| 亚洲日本在线观看视频| 一色屋成人免费精品网站| 国产精品无码永久免费888| 亚洲高清视频在线| 久久久久亚洲精品无码系列| 性色午夜视频免费男人的天堂| 亚洲一区二区在线免费观看| 伊在人亚洲香蕉精品区麻豆| 免费人成大片在线观看播放电影| 亚洲色婷婷综合开心网| 美女黄色毛片免费看| 亚洲国产精品白丝在线观看| ZZIJZZIJ亚洲日本少妇JIZJIZ | 久久免费99精品国产自在现线| 亚洲综合另类小说色区| 国产精品免费AV片在线观看| 亚洲黄色片在线观看| 久久久久亚洲av成人无码电影| 免费看一区二区三区四区| 在线观看亚洲一区二区| 亚洲午夜国产精品无码| 久久午夜夜伦鲁鲁片免费无码影视| 亚洲男人天堂2018av| 麻豆亚洲av熟女国产一区二|