What is alternative hashing for String keys in Java 8?(Java 8 中字符串键的替代散列是什么?)
问题描述
Java 8 正在为字符串键提供替代散列,以在遇到大量键散列代码冲突时提高性能.谁能解释一下那是什么以及它是如何工作的?
Java 8 is providing alternative hashing for String keys to improve performance when a large number of key hash code collisions are encountered. Can anybody explain what is that and how it will work?
推荐答案
来自 core-lib-devs@openjkd的="noreferrer">这封电子邮件:
From this email of core-lib-devs@openjkd
:
- 引入了新的接口 Hashable32.
- Hashable32提供了一个方法hash32()
- String 实现 Hashable32 和 hash32() 方法
- HashMap 等人识别 String 并调用 hash32() 而不是 hashCode()
代码的修改:
- Murmur3:https://code.google.com/p/smhasher/wiki/MurmurHash3
- althashing "7" webrev :http://cr.openjdk.java.net/~mduigou/althashing7/8/webrev/
- althashing "8" webrev :http://cr.openjdk.java.net/~mduigou/althashing8/8/webrev/
这篇关于Java 8 中字符串键的替代散列是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!