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

java集合框架day1————集合体系介绍

在进入正文之前,我们先来思考一下之前学过的数组有什么缺点?

<1>长度开始时必须指定,而且一旦指定,不能更改

<2>保存的必须为同一类型的元素

<3>使用数组进行增加/删除元素的代码比较麻烦

为了方便读者理解,我们来看一下实例代码

实例1:数组扩容

Person[] pers=new Person[1];//数组大小是1
per[0]=new person//下面我们来增加新的Person对象(扩容)
Person[] pers2=new Person[pers.length+1];//新创建数组
for(){}//拷贝pers的数组的元素到pers2
pers2[pers2.length-1]=new Person();//添加新的对象

由此我们引入集合框架的概念,集合有下列三个特点:

<1>可以动态保存任意多个对象,使用方便

<2>提供了一系列方便操作对象的方法:add,remove,set,get等

<3>使用集合添加,删除新元素的示意代码,简洁明了

下面我们来看一下java的集合框架图

<1>单列集合框架

Collection接口实现了父接口Iterable,同时还有两个子接口List和Set,其中List有三个子类,分别是Vector(向量容器),ArrayList(数组集合),LinkedList(链表集合),Set有两个子类,分别是Treeset(排序),Hashset(哈希),注意子类实现Collection接口的时候也实现其父接口Iterable

<2>双列集合框架

-

Map有三个子接口,Hashtable,HashMap,TreeMap其中Hashtable有子类Properties,HashMap有子类LinkedHashMap

单列集合和双列集合的定义:

单列集合添加元素以单一值的方式添加,双列集合添加元素以键值对的方式添加

http://www.dtcms.com/a/147114.html

相关文章:

  • mongodb 存储数据的具体实现方式
  • 基于SpringBoot的篮球联盟管理系统(源码+数据库+万字文档)
  • 如何开发一套TRS交易系统:架构设计、核心功能与风险控制
  • 第十三讲、isaaclab中修改工作流的RL环境
  • CCF CSP 第37次(2025.03)(1_数值积分_C++)
  • Java 程序员的 Python 之旅
  • 【线段树】P1253 扶苏的问题|普及+
  • 操作系统期中复习
  • 初识Redis · C++客户端list和hash
  • 第七届传智杯全国IT技能大赛程序设计赛道 国赛(总决赛)—— (B组)题解
  • 【PyQt5】@QtCore.pyqtSlot()的作用
  • oracle不同数据库版本的自增序列
  • element-ui中的上传组件el-upload非自动上传监听不到success
  • go for 闭环问题【踩坑记录】
  • DeepseekV3MLP 模块
  • 快充协议芯片XSP04D支持使用一个Type-C与电脑传输数据和快充取电功能
  • 腾讯一面-软件开发实习-PC客户端开发方向
  • LX4-数据手册相关
  • CentOS 7进入救援模式——VirtualBox虚拟机
  • 23. git reset
  • unity TEngine学习4
  • 【Andorid备案获取keystore里面的公钥和SHA-1码等等】
  • 怎么发布、更新Python第三方库?以potx-cloud为例
  • PHP日志会对服务器产生哪些影响?
  • 基于DeepSeek/AI的资产测绘与威胁图谱构建
  • 华为VRP系统知识总结及案例试题
  • 【Python核心库实战指南】从数据处理到Web开发
  • TapData × 梦加速计划 | 与 AI 共舞,TapData 携 AI Ready 实时数据平台亮相加速营,企业数据基础设施现代化
  • DeepSeek赋能Nuclei:打造网络安全检测的“超级助手”
  • RHCE 练习二:通过 ssh 实现两台主机免密登录以及 nginx 服务通过多 IP 区分多网站