**Goal:** explain why `Integer a = 127, b = 127; a == b` is true but fails for 128. **Show:** - the `-128..127` cache from `Integer.valueOf` (autoboxing) vs `new Integer` (deprecated) - same behaviour for `Long`, `Short`, `Byte`, `Character` (0..127); none for `Double`/`Float` - the fix: `equals` / unboxing; NPE when unboxing `null` **Where:** new package `FirstSteps/src/test/java/pl/mperor/lab/java/quirk`
Activity