前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >初识集合框架

初识集合框架

作者头像
E绵绵
发布2024-04-17 08:15:58
670
发布2024-04-17 08:15:58
举报
文章被收录于专栏:编程学习之路编程学习之路

什么是集合框架

❤️❤️Java 集合框架 Java Collection Framework ,又被称为容器 container ,是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes 。有几个典型的集合框架: Collection接口:是集合框架的根接口,定义了一组通用的方法,用于操作集合中的元素。它有两个主要的子接口:List和Set。 List接口:继承自Collection接口,表示一个有序的集合,允许重复元素。它的常见实现类有ArrayList、LinkedList和Vector。 Set接口:继承自Collection接口,表示一个不允许重复元素的集合。它的常见实现类有HashSet、TreeSet和LinkedHashSet。 Map接口:表示一组键值对的集合,每个键都是唯一的。它的常见实现类有HashMap、TreeMap和LinkedHashMap。 集合框架提供了丰富的方法和算法,可以方便地对集合进行增删改查等操作。它可以用于各种场景,如数据存储、数据排序、数据过滤等。使用集合框架可以提高代码的可读性和可维护性,并且可以更好地利用Java语言的特性。 如下是其总体系图(里面包含了很多集合框架,并且内部都是重要的类和接口):

这图我们看下就行,不要求强记里面的类和接口,在之后的学习里会一一讲解这里面的类和接口。

集合框架的重要性

1. 开发中的使用

❤️❤️使用成熟的集合框架,有助于我们便捷、快速的写出高效、稳定的代码学习背后的数据结构知识,有助于我们理解各个集合的优缺点及使用场景。

2. 笔试及面试题

腾讯-Java后台开发面经 1. HashMap 了解不,介绍一下,如果一个对象为 key 时,hashCode 和 equals 方法的用法要注意什么? 2. HashSet 和 HashMap 的区别是什么? 3. HashMap 是线程安全的么?那需要线程安全需要用到什么? 阿里巴巴-Java后台开发面经 1. ArrayList 和 LinkedList 的区别是什么? 2. 有了解过 HashMap 的具体实现么? 3. HashMap 和 ConcurrentHashMap 哪个效率更高? 今日头条-Java后台开发面经 1. 编程题:判断一个链表是否是一个回文链表。 2. Redis 的 zset 类型对应到 java 语言中大致是什么类型? 3. hashCode 主要是用来做什么用的? ❤️❤️在面试时大部分是跟其有关的知识,所以我们得学好它,才能找到心仪的offer。

容器背后所涉及的数据结构以及算法

1.什么是数据结构

🎯🎯数据结构是计算机科学中用于组织和存储数据的一种方式。它定义了数据的组织方式、访问和操作数据的方法,以及数据之间的关系。常见的数据结构包括数组、链表、栈、队列、树、图等。(之后一一会讲)

2.容器背后对应的数据结构

❤️❤️在学数据结构的这阶段,我们主要学习以下容器,每个容器其实都是对某种特定数据结构的封装,大概了解一下,也不用记,之后的文章会给大家一一详细讲解并模拟实现: 1. Collection:是一个接口,包含了大部分容器常用的一些方法 2. List:是一个接口,规范了ArrayList 和 LinkedList中要实现的方法: ArrayList:实现了List接口,底层为动态类型顺序表 LinkedList:实现了List接口,底层为双向链表 3. Stack:底层是栈,栈是一种特殊的顺序表 4. Queue:底层是队列,队列是一种特殊的顺序表 5. Deque:是一个接口 6. Set:集合,是一个接口,里面放置的是K模型: HashSet:底层为哈希桶,查询的时间复杂度为O(1) TreeSet:底层为红黑树,查询的时间复杂度为O( ),关于key有序的 7. Map:映射,里面存储的是K-V模型的键值对: HashMap:底层为哈希桶,查询时间复杂度为O(1) TreeMap:底层为红黑树,查询的时间复杂度为O( ),关于key有序

3.涉及的相关java知识

1. 泛型 Generic 2. 自动装箱 autobox 和自动拆箱 autounbox 3. Object 的 equals 方法 4. Comparable 和 Comparator 接口 ❤️❤️对于这四个知识点,我们最后两个知识点在这之前就学了,前面两个没学,不过很快就会讲。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 集合框架的重要性
    • 1. 开发中的使用
      • 2. 笔试及面试题
      • 容器背后所涉及的数据结构以及算法
        • 1.什么是数据结构
          • 2.容器背后对应的数据结构
            • 3.涉及的相关java知识
            相关产品与服务
            容器服务
            腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档