我正在寻找一个使用字节数组(byte [])作为映射键的映射实现。
你可以像map.get(myByteArray,0,len)那样执行get操作;
谷歌没有帮助。 :(答案 0 :(得分:4)
您可以使用ByteBuffer。它实现了hashcode方法,生成的hash将取决于ByteBuffer的内容。但是,您必须确保用作密钥的这些缓冲区的内容不应更改。
直接来自JavaDoc 因为缓冲区哈希码是依赖于内容的,所以不建议使用缓冲区作为哈希映射或类似数据结构中的键,除非知道它们的内容不会改变。
这是一种方法。另一个是实现你自己的类,它将存储字节数组并实现hashCode()和equals()方法,它考虑了这个字节数组的内容。