دونوں objects کو ترتیب دینے کا طریقہ متعین کرتے ہیں، لیکن مختلف انداز میں: Comparable کسی class کی قدرتی ترتیب کو متعین کرتا ہے (جو خود class نے implement کیا ہے)، جبکہ Comparator ایک ، متبادل ترتیب کو متعین کرتا ہے (ایک علیحدہ object)۔ انتخاب اس بات پر منحصر ہے کہ ترتیب ذاتی ہے یا حالت پر منحصر۔
