Molemmat määrittävät, miten objektit järjestetään, mutta eri tavoin: Comparable määrittää luokan luonnollisen järjestyksen (luokka toteuttaa sen itse), kun taas Comparator määrittää , vaihtoehtoisen järjestyksen (erillinen objekti). Valinta riippuu siitä, onko järjestys luontainen vai tilannekohtainen.
