Depends. Are you searching for the complicated thing by identity, or in a system that caches identities and/or interns objects of the type you’re handling? All
Of those can result in searches being word-based and thus vectorizable/cache-sympathetic more often.
So now the result of `new HashMap<>()` should be backed by an array for the first 200 elements or so? Potentially the size depending on the L1 size etc.
This has always been the case. The RAM effects only changed at which point the O(n) stops being faster than the O(log n) solution.