java jcf查看_JAVA 集合框架(JCF)

java jcf查看_JAVA 集合框架(JCF)网络上搜索 java 集合框架各种理论知识 图谱都有 只要你认真看就会有收获 博主是一个坚决不随意 造轮子 的新人 所以我的这篇文章就总结一下我所学到的 JCF 首先谈一下我的学习路径 大二上学期学习前端 js html css 大二下学期学习 java 语言基础 连带着数据结构也囫囵一遍 大三上学期学习 javaEE 学完 ssm 后 课程戛然而止 感觉人生寂寞如雪 JCF 数据 java 的语言基础部分 但是所

网络上搜索java集合框架各种理论知识,图谱都有,只要你认真看就会有收获,博主是一个坚决不随意“造轮子”的新人,所以我的这篇文章就总结一下我所学到的JCF。

首先谈一下我的学习路径,大二上学期学习前端(js,html,css),大二下学期学习java语言基础,连带着数据结构也囫囵一遍。大三上学期学习java EE,学完ssm后,课程戛然而止,感觉人生寂寞如雪。

JCF数据java的语言基础部分,但是所涉及的内容真的是——–每次看都看到了新的东西。

先说一下大致的内容:

JCF是容器:可以容纳其他对象的对象,因为我们要求它可以容纳所有我们平时用到的对象,所以将它设计为可以容纳Object的对象,JDK版本的升级使得JCF也智能了许多。

JCF包含两个接口:Collection(集合)和Map。Collection又包含三个子接口List,Set,Queue。

这里面就涉及到了java的三大特性,封装,多态,继承。java是单继承机制,但是可以实现多个接口,另外可以通过泛化机制实现多态。

为了将JCF的内容看的清楚,下面贴上几张图

3eb3456cfc79eca36858e0946e70d785.png

这张图可以说是最全面的了,包含了所有接口和实现类,不过有很多是我们自己用不到的。下面贴一张简单的。

183a2adf741ba148479cd70f6a3d2050.png

这张图片上提取经常使用到的接口,但是还是没有实现类,下面总结一下这些接口的实现类

1、List接口的实现类有 ArrayList, LinkedList

在日常编程中经常会用到List

List userList=new ArrayList();

List userList=new LinkedList();

上面是java多态的体现,两种实现类的底层实现方式不同,一种是以数组的方式实现的,一种是以双向链表的方式实现的,适用于不同的场景,不同的场景下的时间复杂度是不同的,这也是我们的选择依据。

这里体现了数据结构对程序效率的影响。

2、Set接口的实现类有HashSet,LinkedHashSet(对前一种方法的包装),set 表示无序集合不重复。

3、Queue接口的实现类:ArrayDeque(首选)和linkedList

4、Map子接口的实现类:HashMap,TreeMap(底层实现是红黑树),LinkedHashMap。

日常编程中我们需要考虑的问题是:这种对象用什么容器来装(List,Map,Set,Queue)并针对这种容器选择合适的实现类,最后考虑如何从容器中取出对象。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/230981.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 扛得住的MySQL数据库架构「建议收藏」

    扛得住的MySQL数据库架构

    2022年2月17日
    42
  • 小程序子组件向父组件传值_小程序组件通信

    小程序子组件向父组件传值_小程序组件通信父组件页面是carts.wxml子页面是product.html子组件wxml代码<viewclass=’cartAllSel’bindtap=”bindSelectAll”><iconwx:if=”{{selectedAllStatus}}”class=’iconDel’type=’success’color=’#4D4D4D’size…

    2025年9月13日
    7
  • Python网络爬虫实战项目代码大全「建议收藏」

    Python网络爬虫实战项目代码大全「建议收藏」WechatSogou [1]-微信公众号爬虫。基于搜狗微信搜索的微信公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫,返回结果是列表,每一项均是公众号具体信息字典。 DouBanSpider [2]-豆瓣读书爬虫。可以爬下豆瓣读书标签下的所有图书,按评分排名依次存储,存储到Excel中,可方便大家筛选搜罗,比如筛选评价人数&gt;1000的高分书籍;可依据不同的主题存储到Excel不同的Shee…

    2022年5月20日
    35
  • Java解析XML文件

    Java解析XML文件1.DOM方式解析XMLDom解析是将xml文件全部载入到内存,组装成一颗dom树,然后通过节点以及节点之间的关系来解析xml文件,与平台无关,java提供的一种基础的解析XML文件的API,理解较简单,但是由于整个文档都需要载入内存,不适用于文档较大时。2.SAX方式解析XML基于事件驱动,逐条解析,适用于只处理xml数据,不易编码,而且很难同时访问同一个文档中的多处不同数据3.JDOM方式解

    2022年5月4日
    38
  • 史上最简单的 GitHub 教程

    史上最简单的 GitHub 教程1简介  GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。GitHub于2008年4月10日正式上线,除了Git代码仓库托管及基本的Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,在GitHub上托管的版本数量非常之多,其

    2022年7月22日
    11
  • CentOS 7 升级 Linux 内核

    CentOS 7 升级 Linux 内核升级CentOS内核参考资料1升级CentOS内核参考资料2通过/proc虚拟文件系统读取或配置内核Linux内核官网CentOS官网1.关于Linux内核Linux内核分两种:官方内核(通常是内核开发人员用)和各大Linux发行版内核(一般用户常用)。1.1官方内核在使用Docker时,发现其对Linux内核版本的最低要求…

    2022年7月23日
    14

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号