我们经常说List是有序可重复的,Set是无序不可重复的,我们这里指的有序和无序是说我们遍历输出以后元素的输出顺序是够和我们添加顺序一致。
1.List是基于数组实现的,每个元素都有其对应的索引,所以添加顺序自然不会变,怎么添加最后就会怎么输出,而且也不会判定是否有重复的问题,你添加什么元素,我只管往集合中塞就行了,所以也是可以存在null值的。
2.Set则不同,我们通常说的Set是无序的指的是HashSet,因为HashSet是根据其Hash值排序的,它不能保证元素的添加顺序,更不能保证自然顺序,而Set的其他实现类是可以实现这两种顺序的。
1,LinkedHashset : 保证元素添加的自然顺序
2,TreeSet : 保证元素的自然顺序