最近帮新同事看一个问题,需求大概是这样的,他做了一个上传文档的功能,文件先上传到服务器,数据库保存文件上传记录,然后另启一个线程从服务器上读到文件上传到分布式文件系统,文件类型有图片和pdf,文件不能重复且,需要根据上传时间排序,于是首先数据库做了排序,然后用了HashSet集合来存储文件名,这样就只能去重但是不能排序,后来想到用TreeSet,但是依然没有排序,于是看了下TreeSet源码,发现排序规则不是按顺序的,而是自然排序,文件名是一串类似UUID的唯一ID,自然无法排序,所以用了LinkHashSet解决了这个问题。