The values of boxed primitives cannot be compared using the == and != operators by default. This is because these are interpreted as reference comparison operators.
| Wiki Markup |
|---|
Autoboxing can automatically wrap the primitive type to the corresponding wrapper object. Some care should be taken during this process, especially when performing comparisons. The Java Language Specification \[[JLS 05|AA. Java References#JLS 05]\] explains this point clearly: |
If the value
pbeing boxed istrue,false, abyte, acharin the range\u0000to\u007f, or anintorshortnumber between-128and127, then letr1andr2be the results of any two boxing conversions ofp. It is always the case thatr1 == r2.
Noncompliant Code Example
...