In some cases, boxing can be source of significant performance penalty, especially in loops.
Example:
public void example() { Long l = 12L; needBox(l); for (int i = 0; i < 10; i++) { needPrimitive(l); // Loops usages considered as more often } } void needPrimitive(long l) {} void needBox(Long l) {}
New in 2018.2