我正在阅读 hadoop 代码并在分区程序中找到这一行。
(key.hashCode() & Integer.MAX_VALUE) % numReduceTasks
他们为什么使用按位与?
最佳答案
去除符号位。在 hashCode 为负数的情况下。
就像 Math.abs(key.hashCode())
关于java - 为什么要在这里使用按位 AND?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4904445/