Seriously, you should check out the Java docs link Luke Willis posted in his answer, its pretty impressive to see the sheer number of classes (a good chunk of which are used very frequently) which are "Known implementing classes". If you go over that list and consider how powerful compare can be for the classes you are familiar with (if you are familiar with auto-boxing/unboxing then you will be, if not, you can click on those classes at that spot in the Java doc.
You can sit there and try to figure out for the first time how to code an algorithm that sorts for example an ArrayList<SomeObjectType> arrList
based on an instance variable of each object inside, such as Card objects' primitive int faceValue...
...60+ minutes later since you are unfamiliar with how to create a sorting algorithm it will take a while. Also, it will be a hefty chunk of somewhat obfuscated code.
...or you could just read up on Comparable and implement it.
Edit: Not to say that making an algorithm by hand would be a bad thing, it would definitely be a good learning experience, but Comparable is such a powerful and condense tool to implement in your code.