Alasan yang paling mungkin: quicksort tidak stabil , yaitu entri yang sama dapat mengubah posisi relatifnya selama pengurutan; antara lain, ini berarti bahwa jika Anda mengurutkan array yang sudah diurutkan, itu mungkin tidak tetap tidak berubah.
Karena tipe primitif tidak memiliki identitas (tidak ada cara untuk membedakan dua int dengan nilai yang sama), ini tidak menjadi masalah bagi mereka. Tetapi untuk tipe referensi, ini dapat menyebabkan masalah untuk beberapa aplikasi. Oleh karena itu, jenis gabungan stabil digunakan untuk itu.
OTOH, alasan untuk tidak menggunakan penyortiran stabil (dijamin n * log (n)) untuk tipe primitif mungkin karena hal itu memerlukan pembuatan tiruan dari array. Untuk tipe referensi, di mana objek yang dirujuk biasanya mengambil lebih banyak memori daripada array referensi, ini biasanya tidak menjadi masalah. Tetapi untuk tipe primitif, mengkloning array secara langsung akan menggandakan penggunaan memori.