位置: 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躄鱼)

  • 企业清算过程中发生的费用
  • 税筹是什么意思,有哪些工具
  • 增值税留抵税务处理办法
  • 公司房租只有房租租赁协议无发票怎么入账
  • 为什么缴纳税
  • 研发支出资本化支出在报表哪里
  • 已经认证的发票可以作废吗
  • 其他综合收益转入投资收益
  • 工程结算会计科目及账务处理
  • 税率开错情况说明
  • 租赁房屋增值税
  • 去年已支付的费用怎么查
  • 赠品转做商品销售的账务处理如何做?
  • 长期股权投资的减值准备的会计处理
  • 不同税率的增值税如何报税
  • 个人贷款打入公司账户
  • 特许权使用费预扣预缴计算方法
  • 个人所得税申报是什么意思?
  • 价格调节基金税率和计税依据
  • 计提工资与发放工资
  • 计提缴纳社保的会计分录
  • 什么情况财务费用是负数
  • 公司购买房子涉及什么税
  • 吸甲醛最好的植物是什么?
  • 华为p30分屏怎么操作
  • 发票来了冲预付账款怎么记账
  • 出口退税是怎么退
  • SwiftBTN.exe - SwiftBTN是什么进程 有啥作用
  • 先开票后发货怎么操作
  • php utf8转gb2312
  • 电脑方案表格
  • 公司搞活动买的车能买吗
  • 国有土地出让收入分析报告
  • 怎么处理坏账准备的问题
  • c#openxml
  • 购买二手车要缴税吗
  • yolov3训练自己的数据超详细
  • php判断字符串是否为ip地址
  • php floatval
  • php生成zip压缩包
  • 外贸公司美金账户维护费用
  • 投资性房地产公允价值模式账务处理
  • 金蝶k3明细账如何查询
  • mongodb添加环境变量
  • 如何做固定资产的台账
  • 职工教育经费包括住宿费吗
  • 什么是一般增值税纳税人
  • 一般纳税人申报表电子版
  • 个税申报信息怎么填
  • 将一个表中的字段更新到另一个表
  • 增值税勾选统计后如何导出明细表
  • 运费险保费计入什么费用
  • 期末留抵税额和账上哪一个数对应
  • 其他收益期末余额
  • 纯外贸企业进项税怎么抵扣
  • 半成品怎么核算成本做账
  • 常用的加速折旧方法
  • 资产处置费用是资产类科目吗
  • 商贸公司主营业务成本会计分录
  • 进口货物例题
  • 计提房产税需要附凭证吗
  • 为什么开发票能抵税?
  • 短期薪酬主要包括
  • centos还原到初装
  • xp电脑开机自检怎么取消
  • win7待机时间在哪调
  • 32位win7安装
  • 索尼笔记本安装软件顺序
  • perl ne
  • js对象属性值
  • Android计算器项目代码
  • relative absolute无法冲破的等级问题解决第1/3页
  • 安卓中px,dp,sp的区别
  • python中scipy.stats
  • 产品税务编号查询系统官网
  • 银行和税务局的关系
  • 土地增值税分期清算条件?
  • 河南国税发票查询真伪官网
  • 2019年十堰市高中录取分数线
  • 2021北京餐饮业发展趋势报告
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设