Java中的list和set有什么区别
list与set方法的区别有:1、list可以插入多个null元素,而set只允许插入一个null元素;2、list容器是有序的,而set容器是无序的;3、list方法可以允许重复的对象,而set方法不允许重复对象等等。
list与set方法的区别有:list可以允许重复对象和插入多个null值,而set不允许;list容器是有序的,而set容器是无序的等等
Java中的集合共包含三大类,它们分别是Set(集),List(列表)以及Map(映射)。它们都处在java.util中并且都为接口。它们各自都有各自的实现类。Set的实现类主要有HashSet和TreeSet,List的实现类主要有ArrayList。接下来将为大家介绍这两大类之间的区别,具有一定的参考作用,希望对大家有所帮助。
【推荐课程:Java教程】
List方法与set方法的区别
(1)重复对象
list方法可以允许重复的对象,而set方法不允许重复对象
(2)null元素
list可以插入多个null元素,而set只允许插入一个null元素
(3)容器是否有序
list是一个有序的容器,保持了每个元素的插入顺序。即输出顺序就是输入顺序,而set方法是无序容器,无法保证每个元素的存储顺序,TreeSet通过 Comparator 或者 Comparable 维护了一个排序顺序
(4)常用的实现类
list方法常用的实现类有ArrayList、LinkedList 和 Vector。其中ArrayList 最为流行,它提供了使用索引的随意访问,而LinkedList 则对于经常需要从 List 中添加或删除元素的场合更为合适,Vector 表示底层数组,线程安全
Set方法中最流行的几个实现类是 HashSet、LinkedHashSet 以及 TreeSet。最流行的是基于 HashMap实现的 HashSet;TreeSet 还实现了 SortedSet 接口,因此 TreeSet 是一个根据其 compare() 和compareTo() 的定义进行排序的有序容器
总结:以上就是本篇文章的全部内容了,希望通过这篇文章可以帮助大家来区分list与set的区别。
以上就是Java中的list和set有什么区别的详细内容,更多请关注其它相关文章!
上一篇: css如何实现li不换行显示
下一篇: PHP抽象类 介绍_PHP
推荐阅读
-
JAVA中list,set,数组之间的转换详解
-
JAVA中list,set,数组之间的转换详解
-
Java8利用stream的distinct()方法对list集合中的对象去重和抽取属性去重
-
Python中内置数据类型list,tuple,dict,set的区别和用法
-
Java8利用stream的distinct()方法对list集合中的对象去重和抽取属性去重
-
java中List对象的操作方法和List对象的遍历
-
java中的值传递和引用传递有什么区别呀?
-
Python中内置数据类型list,tuple,dict,set的区别和用法
-
Java中res.add(list)和res.add(new ArrayList<Integer>(list))的区别
-
由Java中的Set,List,Map引出的排序技巧