List , Set 都是继承自 Collection 接口
List 特点:元素有放入顺序,元素可重复
Set 特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉
Set元素虽然无放入顺序,但是元素在set中的位置是由该元素的HashCode 决定的(HashSet内部实现了HashMap,HashSet的值作为HashMap的key),其位置其实是固定的,加入Set 的Object 必须定义equals ()方法
另外list支持for循环,也就是通过下标来遍历,也可以用迭代器,但是set只能用迭代,因为他无序,无法用下标来取得想要的值。)
Set和List对比
Set:检索元素效率低下,删除和插入效率高,插入和删除不会引起元素位置改变。
List:和数组类似,List可以动态增长,查找元素效率高,插入删除元素效率低,因为会引起其他元素位置改变