Vector问题

cn321231 2009-06-28 12:20:48
Vector到底是怎么样计算它的长度的
...全文
45 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yh4130a 2009-06-28
  • 打赏
  • 举报
回复
没看过源代码,但是我个人从使用上理解为 它是一个数组链表,即先分配固定长度数组,当数组存满后再分配一个数组与上一个数组连接。
至于长度,应该是存的变量,在添加和删除时使用同步方法从新给长度附值
libihuitwo 2009-06-28
  • 打赏
  • 举报
回复
vector和ArrayList都是List接口的实现类,它们的长度都是调用size()方法
sainer 2009-06-28
  • 打赏
  • 举报
回复
可以对照着API文档,看一下源码
有耐心的话,不是很难的
awusoft 2009-06-28
  • 打赏
  • 举报
回复
这个..看JDK吧.Vector底层好像还是数组.用一个变量去记录长度.可能底的数组空间是10,但实际元素只有6,长度就是元素的个数.
icesnows 2009-06-28
  • 打赏
  • 举报
回复
Vector和ArrayList都不是用链表来实现的
LinkedList是用链表

Vector和ArrayList底层都是用数组,维持了两个变量,一个是容量,一个就是长度
容量是数组的长度,而Vector、ArrayList的长度就是里面元素的个数
当容量不够是分配一个更大的新数组

容量并等于实际所需保存的元素个数,重新分配的时候都留有一定得余量,主要是从效率上考虑

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧