久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

具有字節(jié)數(shù)組鍵和字符串值的 HashMap - containsKey

HashMap with byte array key and String value - containsKey() function doesn#39;t work(具有字節(jié)數(shù)組鍵和字符串值的 HashMap - containsKey() 函數(shù)不起作用)
本文介紹了具有字節(jié)數(shù)組鍵和字符串值的 HashMap - containsKey() 函數(shù)不起作用的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我正在使用 HashMap: byte[] 鍵和字符串值.但我意識到,即使我使用

I'm using a HashMap: byte[] key and String value. But I realize that even I put the same object (same byte array and same string value) by using

myList.put(TheSameByteArray, TheSameStringValue)

到HashMap中,表還是會插入一個新的具有不同HashMapEntry的對象.那么函數(shù) containsKey() 就不能工作了.

into HashMap, the table still inserts a new object with different HashMapEntry. Then function containsKey() cannot work.

有人可以為我解釋一下嗎?我怎樣才能解決這個問題?謝謝.(Android Java)

Can someone explains this for me? How can I fix this? Thanks. (Android Java)

@Override public boolean containsKey(Object key) {
    if (key == null) {
        return entryForNullKey != null;
    }

    int hash = Collections.secondaryHash(key);
    HashMapEntry<K, V>[] tab = table;
    for (HashMapEntry<K, V> e = tab[hash & (tab.length - 1)];
            e != null; e = e.next) {
        K eKey = e.key;
        if (eKey == key || (e.hash == hash && key.equals(eKey))) {
            return true;
        }
    }
    return false;
}

推薦答案

一個 byte[](或任何數(shù)組)不能作為 HashMap,因為數(shù)組不會覆蓋equals,所以兩個數(shù)組只有在引用同一個對象時才會被認為是相等的.

A byte[] (or any array) can't work properly as a key in a HashMap, since arrays don't override equals, so two arrays will be considered equal only if they refer to the same object.

您必須將您的 byte[] 包裝在一些覆蓋 hashCodeequals 的自定義類中,并將該自定義類用作HashMap 的關鍵.

You'll have to wrap your byte[] in some custom class that overrides hashCode and equals, and use that custom class as the key to your HashMap.

這篇關于具有字節(jié)數(shù)組鍵和字符串值的 HashMap - containsKey() 函數(shù)不起作用的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯(lián)系我們刪除處理,感謝您的支持!

相關文檔推薦

Why would you choose Android API over Google APIs in the SDK on Eclipse?(為什么在 Eclipse 的 SDK 中選擇 Android API 而不是 Google API?)
Couchbase Bucket authentication error(Couchbase 存儲桶身份驗證錯誤)
admob 6.2.1 nullpointer exception(admob 6.2.1 空指針異常)
How to setup SDK in IntelliJ IDEA?(如何在 IntelliJ IDEA 中設置 SDK?)
My phone cannot be detected in eclipse to test run(eclipse 無法檢測到我的手機進行試運行)
platform-toolsaapt.exe directory missing in android SDK(android SDK 中缺少 platform-toolsaapt.exe 目錄)
主站蜘蛛池模板: 天天爱天天操 | 久草视频观看 | 日日骚网| 免费黄色大片 | 国产精品一二区 | 国产一区二区视频免费在线观看 | 午夜精品一区二区三区在线观看 | 日韩在线中文字幕 | 国产视频一区二区 | 91在线观看视频 | av黄色在线 | 久久久青草婷婷精品综合日韩 | 国产永久免费 | 国产在线高清 | 国产一区二区视频免费在线观看 | 精品国产鲁一鲁一区二区张丽 | 日韩欧美在线观看视频 | 久久999 | 欧美亚洲激情 | 日韩视频专区 | 国产一区二区三区视频在线观看 | 亚洲欧美视频一区 | 91在线观看视频 | 日本欧美国产在线 | 亚洲国产成人精品一区二区 | 精品久久精品 | 欧美精品一区二区三区四区 | 欧美男人亚洲天堂 | www.精品一区 | av免费看在线 | 日本一区二区三区免费观看 | 另类a v| 国产伦一区二区三区四区 | 精品自拍视频在线观看 | 欧美激情视频一区二区三区在线播放 | 久久精品国产一区 | 亚洲精品18 | 一本岛道一二三不卡区 | 成人av在线播放 | 一区二区三区四区视频 | 欧美精品一区二区三区蜜桃视频 |