Quicksort is used for arrays of primitive types while mergesort for Object[] arrays. The main reason why mergesort is used for Objects that mergesort is stable - it does not reorder elements that are equal