Copiado de https://www.ime.usp.br/~pf/estruturas-de-dados/aulas/bag.html#resizing-array
Pergunta: Qual a diferença entre Integer (veja código do programa cliente Stats) e int?
Resposta: Integer é uma classe-invólucro (= wrapper class) que corresponde ao tipo primitivo int. Ao contrário de uma variável do tipo int, um objeto da classe Integer pode ter valor null.
Java converte Integer em int, e vice-versa automaticamente quando necessário. (Veja, por exemplo, a linha de código int x = itr.next().) Essas conversões são conhecidas como autoboxing e autounboxing.