Wrapper Type
For each primitive type, there is a corresponding reference type called wrapper type.
Auto-(Un)Boxing: Implicit conversions between wrapper/primitives.

Notice:
- Array are never autoboxed/unboxed(an Integer[] cannot be used in place of an int[], or vice versa)
- Autoboxing/unboxing incurs a measurable performance impact.
- Wrapper types use much more memory than primitive types.
Primitive Widening
Be Care for Ambiguous Conversion
or, call long version:
assertEquals((long)expected, am.get(2));etc