I have created a map object that stores the key and the value, but it has to sort the values by descending order
How frequently do you need this sorted representation of your data?
If you need a sorted representation very infrequently, a TreeMap might be overkill ... because add/remove methods for TreeMap run in O(lgn), which is not as good as the O(1) run time for HashMap's add/remove methods.
On the other hand, if you need to operate on the elements in a sorted fashion frequently, then you'll want to avoid paying O(n lg n) to obtain a sorted representation ... so maintaining a sorted structure could be advantageous and TreeMap might be a good candidate.