Java caches `Integer` objects in the range of -128 to 127. Thus, `Integer a = 100; Integer b = 100;` will return `true` for `a == b`, but for values outside this range, `==` compares object references, not values. Use `equals()` for accurate comparisons.