我們經常聽說List是有序且重復的,Set是無序不重復的。這里有個誤區,這里說的順序有兩個概念,一是按添加的順序排列,二是按自然順序a-z排列。Set並不是無序的,傳統說的Set無序是指HashSet,它不能保證元素的添加順序,更不能保證自然順序,而Set的其他實現類是可以實現這兩種順序的。
保證元素添加的順序:LinkedHashSet
保證元素自然的順序:TreeSet
下面通過一個實例看下就明白了
結果輸出:
s3 s4 s5 s1 s2
s1 s5 s3 s4 s2
s1 s2 s3 s4 s5