位置: IT常识 - 正文

java中ArrayList集合的扩容机制(java arraytolist)

编辑:rootadmin

推荐整理分享java中ArrayList集合的扩容机制(java arraytolist),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:arraylist java,java arraylist sublist,java array list,java arraylist join,java array list,java中arraylist用法,java arraylist集合,java arraylist集合,内容如对您有帮助,希望把文章链接给更多的朋友!

java中ArrayList集合的扩容机制(java arraytolist)

710

1、扩容要看添加方法,从属性中可以看出有一个DEFAULT_CAPACITY属性值10。

publicbooleanadd(Ee){//验证是否需要扩容操作ensureCapacityInternal(size+1);//IncrementsmodCount!!//在对应的下标下添加值elementData[size++]=e;returntrue;

2、刚刚进入ensureCapacityInternal(size+1)size是一个完整的变量。

标记了ArrayList的大小(包含的元素数),而此时没有元素的是ensureCapacityInternal(0+1)。

//1、进入这个方法privatevoidensureCapacityInternal(intminCapacity){//2、先调用calculateCapacity(elementData,minCapacity)、这个方法就是检查第一次添加数据、并返回默认的容器大小(就是10)//4、就是执行这个方法ensureExplicitCapacity(10)//为什么参数是10、就是因为这个方法calculateCapacity(elementData,minCapacity)做了操作。ensureExplicitCapacity(calculateCapacity(elementData,minCapacity));//3、数组容量计算privatestaticintcalculateCapacity(Object[]elementData,intminCapacity){//这个能处理就是第一次添加数据时为真if(elementData==DEFAULTCAPACITY_EMPTY_ELEMENTDATA){//然后这个成立、这个方法是取参数1和参数2、两个数之间的最大值//DEFAULT_CAPACITY:默认为10//minCapacity:第一次添加数据为1//所以10和1、10大、最后将10返回出去returnMath.max(DEFAULT_CAPACITY,minCapacity);returnminCapacity;//5、确保显式容量privatevoidensureExplicitCapacity(intminCapacity){modCount++;//6、做判断、//第一次添加数据时为10-0>0:第一次可以成立//第二次添加数据时为2-10>0:第二次可以不成立if(minCapacity-elementData.length>0)//7、执行下面方法、这个方法的作用才是正真的实施扩容并确定首次扩容ArrayList容器大小的方法grow(minCapacity);//扩容

以上就是java中ArrayList集合的扩容机制,希望对大家有所帮助。更多Java学习指路:Java基础

本文链接地址:https://www.jiuchutong.com/zhishi/303776.html 转载请保留说明!

上一篇:PHPCMS漏洞之文件poster.php(phpweb漏洞)

下一篇:Fishwife不是“鱼妻子”!真实含义让人颤抖!(frogfish躄鱼)

  • 抖音上的表情怎么保存到相册(抖音上的表情怎么弄到微信)

    抖音上的表情怎么保存到相册(抖音上的表情怎么弄到微信)

  • 如何修改微信运动步数(如何修改微信运动)

    如何修改微信运动步数(如何修改微信运动)

  • 宽带连接已拒绝远程连接因为未识别(宽带连接已拒绝远程连接因为未识别win11)

    宽带连接已拒绝远程连接因为未识别(宽带连接已拒绝远程连接因为未识别win11)

  • 华为mate20pro微信深色模式怎么设置(华为mate20pro微信运动不计步)

    华为mate20pro微信深色模式怎么设置(华为mate20pro微信运动不计步)

  • 设置了群消息免打扰还有提示(设置了群消息免打扰还有提示音)

    设置了群消息免打扰还有提示(设置了群消息免打扰还有提示音)

  • 手机贴钢化膜有气泡怎么办(手机贴钢化膜有白边怎么办)

    手机贴钢化膜有气泡怎么办(手机贴钢化膜有白边怎么办)

  • 监控摄像头可以听到声音吗(监控摄像头可以看到多远)

    监控摄像头可以听到声音吗(监控摄像头可以看到多远)

  • 淘宝退款原因对买家有什么影响(淘宝退款原因对谁有影响)

    淘宝退款原因对买家有什么影响(淘宝退款原因对谁有影响)

  • 蓝牙耳机放回仓就充电吗(蓝牙耳机放回仓里还在连接状态)

    蓝牙耳机放回仓就充电吗(蓝牙耳机放回仓里还在连接状态)

  • 电信用户名和密码是什么(电信用户名和密码查询)

    电信用户名和密码是什么(电信用户名和密码查询)

  • 淘宝直播一定要用电脑吗(淘宝直播一定要每天播吗)

    淘宝直播一定要用电脑吗(淘宝直播一定要每天播吗)

  • 主机hdmi接口在哪里(主机的hdmi接口在哪里)

    主机hdmi接口在哪里(主机的hdmi接口在哪里)

  • 什么储存器属于主机部分(属于储存器的是)

    什么储存器属于主机部分(属于储存器的是)

  • 如何删除下载的软件(如何删除下载的文件)

    如何删除下载的软件(如何删除下载的文件)

  • 微信朋友圈怎么取消部分朋友可见(微信朋友圈怎么批量删除)

    微信朋友圈怎么取消部分朋友可见(微信朋友圈怎么批量删除)

  • 微云收藏在哪里打开(微云收集文件功能)

    微云收藏在哪里打开(微云收集文件功能)

  • miui10怎么看手机痕迹(小米10如何查看)

    miui10怎么看手机痕迹(小米10如何查看)

  • 大众点评d币在哪看(大众点评点评券怎么用)

    大众点评d币在哪看(大众点评点评券怎么用)

  • 小米手机拍照实况模式在哪里(小米手机拍照实验室功能)

    小米手机拍照实况模式在哪里(小米手机拍照实验室功能)

  • 索尼xperia1怎么设置美颜

    索尼xperia1怎么设置美颜

  • 闲鱼怎么取消资金保护(闲鱼资料怎么取消)

    闲鱼怎么取消资金保护(闲鱼资料怎么取消)

  • 无需命令行!教你在Win11傻瓜式安装安卓App(不用指令)

    无需命令行!教你在Win11傻瓜式安装安卓App(不用指令)

  • 关于yolov8一些训练的情况(yolov3简介)

    关于yolov8一些训练的情况(yolov3简介)

  • Vue3点击侧边导航栏完成切换页面内组件(WEB)(vue侧边栏导航,右侧显示对应内容)

    Vue3点击侧边导航栏完成切换页面内组件(WEB)(vue侧边栏导航,右侧显示对应内容)

  • less命令  分页显示文件内容(分页limit参数)

    less命令 分页显示文件内容(分页limit参数)

  • 期末未缴税额为负数怎么调整
  • 营业执照作废声明怎么撤销
  • 进口消费税为什么一定要组价
  • 运输企业车辆折旧一次性折旧
  • 应收利息和利息收入的关系
  • 开票金额大于付款金额怎么做分录
  • 所得税季报填错了已经申报了
  • 房产税存在往期滞纳金吗
  • 团建费用会计科目
  • 清洗汽车的目的
  • 零售盘点窍门
  • 出纳人员怎么核酸检测
  • 定金不买了可以退吗
  • 小规模纳税人没有收入怎么报税
  • 建安发票税率是多少2011年
  • 个体工商户季度不超过30万免增值税吗
  • 水利申报怎么申报
  • 餐饮发票怎么进行财税处理?
  • 财务报表提供的信息仅对外部的投资者和债权人有用
  • 没有单价数量只有金额的发票可以用吗
  • 营改增后二手固定资产折旧纳税调整怎么做账?
  • win11开机黑屏进不去桌面
  • 个体工商户经营范围分类目录
  • win11系统怎么进入运行界面
  • 保险支付方式有哪些
  • 个人所得税应该计入什么科目
  • 在公司发明的东西专利权归谁
  • PHP:pg_query()的用法_PostgreSQL函数
  • un system
  • 通过二手车买进套现
  • phpseessid
  • 工资薪金所得申报流程
  • 深度学习第一步——Pytorch-Gpu环境配置:Win11/Win10+Cuda10.2+cuDNN8.5.0+Pytorch1.8.0(步步巨细,少走十年弯路)
  • 发票开错抬头怎么进行税务处理?
  • 分次预缴税额怎么算
  • 废旧物资回收税收优惠政策2022
  • 外出培训餐费要进差旅费吗
  • 残保金所属期怎么写
  • 闭包 python
  • echarts中的legend能被监听吗
  • unity udim
  • 一般纳税人和小微企业的区别
  • 企业资产损失税前扣除管理办法最新
  • 注册资本增加了怎么做账
  • 企业退税要用税吗
  • 自产产品用于福利要交增值税吗
  • 大陆工作的香港人可以开基金账户吗
  • 织梦如何给栏目增加缩略图
  • RedHat6.5/CentOS6.5安装Mysql5.7.20的教程详解
  • 织梦tag标签怎么用
  • 其他权益工具投资
  • 长期借款的会计分录怎么写
  • sql server 2008怎么用
  • 员工补助每月申报怎么填
  • 小规模未达起征点销售额是多少
  • 申请名称预先核准在哪个网站
  • 增值税一般纳税人登记管理办法
  • 稳岗返还的概念
  • 什么是公允价值变动收益
  • 以前年度多结转了成本,可以不调回了今年少结转吗
  • 社保局退回来的社保怎么入账
  • 劳务增票多少个点
  • 其他应收款与其他应付款对冲分录
  • 进口货物的价格组成有哪些
  • 进项税额抵扣时分录
  • 建账过程中应注意的事项
  • 简单基是什么
  • 预装win8的电脑
  • wbs是什么文件
  • win7系统怎么设置屏幕常亮
  • linux远程桌面连接工具
  • js提交表单,如果为空出现红色文字
  • jquery 设置和返回元素属性
  • jquery设置鼠标样式
  • dos的for用法
  • yarn功能
  • 果断收藏9个Javascript代码高亮脚本
  • python怎么写字符串
  • 新旧动能转换是我们能否过坎的关键
  • 合格的税务人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设