java当中的List和Set的区别你都了解吗?下面的文章就是要详细的给大家对这两者的区别做一个介绍,一起来看看吧!
一、list和set方法的区别
1、重复对象
list方法能够允许重复的对象,但是,set方法和list方法不同,set方法不允许重复对象
2、容器是否有序
list的话,它是一个有序的容器,它保持了每个元素的插入顺序,也就是输出顺序就是输入顺序。
但是set方法是无序容器,它不可以保证每个元素的存储顺序,TreeSet通过Comparator或者是Comparable维护了一个排序顺序。
3、null元素
list和set不同,list能够插入多个null元素,但是,set只允许插入一个null元素。
4、常用的实现类
list方法常用的实现类:
ArrayList、LinkedList 和 Vector。
在这些实现类当中,ArrayList是最流行的,ArrayList提供了使用索引的随意访问。
LinkedList的话,就要经常从List当中添加或者是删除元素的场合更为适合。
Vector表示底层数组,线程安全。
Set方法:
HashSet、LinkedHashSet 以及 TreeSet。
在这当中,最流行是HashSet,HashSet是基于HashMap实现。
TreeSet还实现了SortedSet 接口,所以,TreeSet是一个依据其compare()和compareTo()的定义进行排序的有序容器。
二、延伸阅读
Java当中的集合共包含三大类:
1、Set(集)
2、List(列表)
3、Map(映射)
以上就是关于java List和Set的区别的详细介绍了,你都了解了吧。
更多java常见问题,可以继续的通过奇Q工具网的常见问题栏目来了解哦,有更多的java基础知识可以给大家分享呢。
推荐阅读: