Нашел этот код http://www.docjar.com/html/api/java/util/HashMap.java.html после поиска реализации HashMap.
264 static int hash(int h) {
265 // This function ensures that hashCodes that differ only by
266 // constant multiples at each bit position have a bounded
267 // number of collisions (approximately 8 at default load factor).
268 h ^= (h >>> 20) ^ (h >>> 12);
269 return h ^ (h >>> 7) ^ (h >>> 4);
270 }
Может кто-то пролить свет на это? Комментарий говорит нам, почему этот код здесь, но я хотел бы понять , как это улучшает значение плохого хэша и , как он гарантирует, что позиции имеют ограниченное количество конфликтов. Что означают эти магические числа?