I stumbled across the source of AtomicInteger and realized that
AtomicInteger
new AtomicInteger(0).equals(new AtomicInteger(0))
evaluates to
AtomicInteger inherits from Object and not Integer, and it uses standard reference equality check.
If you google you will find this discussion of this exact case.