当前位置: 首页 > news >正文

Java————初始集合框架

一 、 集合框架

Java 集合框架Java Collection Framework ,又被称为容器container ,
是定义在 java.util 包下的一组接口interfaces 和其实现类classes 。

其主要表现为将多个元素element 置于一个单元中,
用于对这些元素进行快速、便捷的存储store 、检索retrieve 、 管理manipulate ,
即平时我们俗称的增删查改CRUD 。

在这里插入图片描述

二 、容器背后对应的数据结构

  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有序

http://www.lryc.cn/news/168508.html

相关文章:

  • SpringMvc如何向context域设置数据
  • 深入探索智能问答:从检索到生成的技术之旅
  • 02_Flutter自定义Sliver组件实现分组列表吸顶效果
  • uniapp实现大气质量指标图(app端小程序端均支持,app-nvue不支持画布)
  • Oracle for Windows安装和配置——2.1.Oracle for Windows安装
  • 2.SpringEL bean引用实例
  • 通用商城项目(下)之——Nginx的安装及使用
  • 滑动时间窗口的思想和实现,环形数组,golang
  • SpringBoot 使用异步方法
  • Django框架学习大纲
  • 基于matlab实现的电力系统稳定性分析摆幅曲线代码
  • mybatis基本构成mybatis与hibernate的区别添加mybatis支持
  • c++23中的新功能之十四输入输出指针
  • Day42:网易云项目,路由进阶
  • Open3D(C++) 三维点云边界提取
  • AUTOSAR汽车电子嵌入式编程精讲300篇-经典 AUTOSAR 安全防御能力的分析及改善
  • LeetCode 1584. 连接所有点的最小费用【最小生成树】
  • 超简单,几行js代码就实现一个 vue3 的数字滚动效果!
  • 两阶段鲁棒优化matlab实现——CCG和benders
  • 二进制安全虚拟机Protostar靶场(4)写入shellcode,基础知识讲解 Stack Five
  • 【Flink实战】玩转Flink里面核心的Source Operator实战
  • [2023-09-12]Oracle备库查询报ORA-01187
  • leetcode 16.最接近的三数之和
  • antd table 自定义排序图标
  • 第十九章、【Linux】开机流程、模块管理与Loader
  • GMAC PHY介绍
  • 华为OD机考算法题:最远足迹
  • QScrollBar滚动条、QSlider滑块、 QDial表盘
  • Prometheus+Grafana可视化监控【MySQL状态】
  • 五,编译定制rom并刷机实现硬改(二)