use TreeSet instread of Collection.sort