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

  • oppok9pro怎么设置息屏显示(oppok9pro怎么设置返回键)

    oppok9pro怎么设置息屏显示(oppok9pro怎么设置返回键)

  • 抖音评论顺序怎么调(抖音评论顺序设置)

    抖音评论顺序怎么调(抖音评论顺序设置)

  • 华为p40自带手机膜的吗(华为p40自带手机壳怎么样)

    华为p40自带手机膜的吗(华为p40自带手机壳怎么样)

  • hpm202d硒鼓型号(惠普m202硒鼓型号)

    hpm202d硒鼓型号(惠普m202硒鼓型号)

  • qq好友秘密怎么知道是谁发的(qq好友秘密怎么消失了)

    qq好友秘密怎么知道是谁发的(qq好友秘密怎么消失了)

  • sony笔记本无线网络开关在哪里(Sony笔记本无线网络搜索不到)

    sony笔记本无线网络开关在哪里(Sony笔记本无线网络搜索不到)

  • word文档打开就卡死(word文档打开就是打印模式)

    word文档打开就卡死(word文档打开就是打印模式)

  • 表格标题怎么居中(表格标题怎么居中不变)

    表格标题怎么居中(表格标题怎么居中不变)

  • 无需验证加微信对方知道吗(无需验证加微信的软件)

    无需验证加微信对方知道吗(无需验证加微信的软件)

  • 剪映怎么给视频加上下边框(剪映怎么给视频加水印)

    剪映怎么给视频加上下边框(剪映怎么给视频加水印)

  • 同步异步区别(同步异步区别数电)

    同步异步区别(同步异步区别数电)

  • 华为cheicl20是什么型号(华为che1cl20是什么手机)

    华为cheicl20是什么型号(华为che1cl20是什么手机)

  • qq等级加速包加多少(qq等级加速包加多少倍)

    qq等级加速包加多少(qq等级加速包加多少倍)

  • ps颜色模式8位和16位的区别(ps颜色模式8位和6位)

    ps颜色模式8位和16位的区别(ps颜色模式8位和6位)

  • iphone扩容有什么影响(iphone扩容有用吗)

    iphone扩容有什么影响(iphone扩容有用吗)

  • iphone11运存多大(苹果11运存到底多大)

    iphone11运存多大(苹果11运存到底多大)

  • oppoa5视频美颜怎么设置(oppoa11x视频美颜)

    oppoa5视频美颜怎么设置(oppoa11x视频美颜)

  • 华为mate20怎么扫描文件(华为mate20怎么扫wifi二维码)

    华为mate20怎么扫描文件(华为mate20怎么扫wifi二维码)

  • iphonem开头的是什么机(iphone m开头)

    iphonem开头的是什么机(iphone m开头)

  • 抖音热门列表为空怎么解决(抖音热门列表为空卸载重装也没用)

    抖音热门列表为空怎么解决(抖音热门列表为空卸载重装也没用)

  • 如何激活苹果11(如何激活苹果11promay)

    如何激活苹果11(如何激活苹果11promay)

  • ssd 散热片贴哪一面(ssd散热片贴哪一面)

    ssd 散热片贴哪一面(ssd散热片贴哪一面)

  • 怎么把四张照片合成一张(怎么把四张照片放一张)

    怎么把四张照片合成一张(怎么把四张照片放一张)

  • 传统行业做小程序有啥好处(传统行业做小程序赚钱吗)

    传统行业做小程序有啥好处(传统行业做小程序赚钱吗)

  • 在BIOS中关闭软驱的方法(禁用软驱)(bios中关闭软盘)

    在BIOS中关闭软驱的方法(禁用软驱)(bios中关闭软盘)

  • 施工项目预缴税率是多少
  • 小规模纳税人收到专票可以抵扣吗
  • 国外收到怎么说
  • 发票上的收款人复核开票人
  • 建筑工程机械服务有限公司企业
  • 售后回租利息可以抵税吗
  • 社保利息计入什么科目
  • 做实验用的东西哪里可以买到
  • 待认证进项税是借方还是贷方
  • 个人缴纳印花税减半吗?
  • 基本账户变更说明模板
  • 发票作废进项税额转出怎么做账
  • 2018年出口总值
  • 增值税报表上填写什么
  • 加油发票的票据抬头是个人,这样可报销吗?
  • 免征的教育费附加如何账务处理
  • 进口增值税 海关
  • 包装物押金如何确定销售额?
  • 房屋产权无偿赠与合同范本
  • 医用酒精出口 需要什么条件
  • Win10 Build 19043(21H1最新版)即将推送 更新内容汇总
  • 关于获得政府补助的公告
  • windows 10 版本 21h1
  • uefiu盘安装系统步骤win10
  • RunClubSanDisk.exe是什么程序? 闪迪U盘广告推介程序
  • win7纯净版系统 9代
  • 短期借贷属于负债类科目
  • 对出纳的要求
  • 农产品来料加工设备
  • 外商投资企业 外资企业
  • php curl_exec
  • php23种设计模式
  • ubuntu系统日志配置文件
  • 融资租赁怎么计税
  • 新租赁准则下的会计分录
  • php采集器
  • rabbitmq work queue
  • 小规模纳税人三减一政策
  • 公司固定资产抵押贷款无法偿还
  • Windows Server 2003下修改MySQL 5.5数据库data目录
  • 企业信息联网核查系统的意义
  • 申请财产损失会计分录
  • 零税率应税服务出口退税
  • 上月未抵扣完的进项税额分录
  • 其他收益结转到什么科目
  • 借款收回的会计科目
  • 固定资产更新改造被替换的旧部件残值收入
  • 开具发票的单位名称与实际收款不一致?
  • 企业的期间费用包括制造费用吗
  • 免征的附加税怎么做账
  • 资产负债表中的固定资产是原值还是净值
  • 财税讲座视频
  • 摊余成本计入哪里
  • mysql判断字符长度
  • Linux下安装mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz
  • 多表关联执行顺序
  • 远程桌面安装
  • 帝国时代2能在win10
  • yosemite 10.10.5升级
  • linux中安装软件可使用哪些方式
  • 怎么删除隐藏文件夹win 10
  • win7系统播放器在哪
  • rsync 教程
  • win7怎样关闭ie浏览器
  • windows 8
  • linux监控软件zabbix
  • 朝鲜引擎
  • css中文手册
  • 在微信支付宝借贷会影响征信吗
  • node.js中实现同步操作的3种实现方法
  • springmvc框架下tomcat服务器数据库密码如何加密
  • JavaScript+html5 canvas实现图片破碎重组动画特效
  • 使用jsonp跨域,服务端如何改
  • jquery给下拉框添加选项
  • 长沙税务网站查询系统
  • 差额征收怎么填报表
  • 2020年海南个人所得税新规定
  • 成都税务局网站首页
  • 处理报废固定资产
  • 河南旧县为什么叫新县
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设