博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
集合的一些概念总结
阅读量:4257 次
发布时间:2019-05-26

本文共 824 字,大约阅读时间需要 2 分钟。

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)、QQ技术交流群(183198395)。

 一、集合的特点:元素类型可以不同,集合长度可变、空间不固定

   java中对一些数据结构和算法进行了封装即集合。集合也是一种对象,用于存储、检索、操作和传输对象
    JCF集合框架。它提供了用于管理集合的接口和类。
 二、集合框架:
        接口:1.Collection:(List(线性元素可重复)、set(元素不可重复))
     2.Map(键值对:一个元素放两个对象,键不能重复)   
 
        实现类:List:ArrayList、Vector、LinkedList
       set:HashSet
       Map:HashMap、TreeMap、Hashtable
 
       算法:Iterator、Collections
 
 三、集合和数组的区别:
    1、集合中只能放对象的引用。数组可以是基本类型也可以是引用类型。
    2、集合的长度可以随元素的多少自动扩展,而数组建好后长度不可改变。
    3、集合中可以存放不同类型的元素,而数组中元素的类型一致。
    4、集合中有很多定义好的算法,使用集合进行对象的存储、检索、操作和传输会很方便。
 
四、List集合常见实现类的区别:
    ArrayList:底层采用数组实现,空间连续。遍历元素速度快,但中间插入和删除元素速度慢。线程不安全。
    Vector:底层也采用数组实现,线程安全。
    LinkedList:是不连续的空间。采用双向链表实现,每个元素除了存放数据外,还要存放上一个元素和下一个元素的地址。 中间插入和删除元素速度快。但遍历速度慢。
 

五、HashMap和HashTable的区别和联系:

 1、HashMap和HashTable都是Map集合接口的实现类
 2、HashMap允许null键和null值,但HashTable不允许
 3、HashMap线程不安全,而HashTable线程安全。
    TreeMap :自动按键排序。
 
 
 
 
 
 

  

 
 
 
 
 
 
 

转载地址:http://zvtei.baihongyu.com/

你可能感兴趣的文章
【Gstreamer】在虚拟机中无法使用硬件加速:gstreamer1.0-vaapi
查看>>
免费图标查询、下载的网站
查看>>
【经验】Lenovo/ThinkPad 进入BIOS的方法汇总
查看>>
【Qt】QPixmap加载图片报错:Corrupt JPEG data: premature end of data segment Didn't expect more than one scan
查看>>
【Ubuntu】ubuntu设置GUI程序自启动
查看>>
【Ubuntu】ping: unknown host www.baidu.com
查看>>
【Qt】qss样式表之:QCalendarWidget,日历窗口样式表设置
查看>>
【Qt】qss样式表之:自定义属性实现动态切换样式
查看>>
【GStreamer】基本概念及安装
查看>>
【GStreamer】gstreamer工具详解之:gst-launch-1.0
查看>>
【GStreamer】gstreamer工具详解之:gst-inspect-1.0
查看>>
【GStreamer】gstreamer工具详解之:ges-launch-1.0
查看>>
【GStreamer】gstreamer工具详解之:gst-discoverer-1.0
查看>>
【Ubuntu】安装中文输入法
查看>>
【Cmake】执行cmake命令时报错:No XSLT processor found
查看>>
【数据库】sqlite中PRAGMA命令说明
查看>>
【Qt】Qt容器总结
查看>>
【C++】C++11 STL算法(一):非修改序列操作(Non-modifying sequence operations)
查看>>
【C++】C++11 STL算法(二):修改序列的操作(Modifying sequence operations)
查看>>
【C++】C++11 STL算法(三):分隔操作(Partitioning operations)、排序操作(Sorting operations)
查看>>