This week's book giveaway is in the OCPJP forum. We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line! See this thread for details.
The elements are ordered using their natural ordering, or by a Comparator provided at set creation time, depending on which constructor is used.
So, as you didn't supply a Comparator when you created the TreeSet, it will be ordered by the natural ordering of your Objects, which is obviously different to the ordering specified by your Comparator. Unless you actually need your ArrayList to be ordered as well, just pass the unordered list to the Treemap constructor along with your Comparator.