Lors de l'utilisation de primitives et quand les types de référence en Java

Dans quel cas faut-il utiliser les types primitifs(int) ou des types de référence (Integer)?

Ce question a suscité ma curiosité.