第二百三二章 动态数组

编程之战 程序小猿 155 字 2024-05-17

既然满了,那就扩容呗!

生成一个容量更大的数组,将已有的垃圾倒腾到里面就行了。

但是这样做不太方便,难道每次满了都得手动扩容一次?

一个更通用的做法是,包装一个动态数组。

像javascript,它的数组长度是可以动态改变的。

静态语言的数组不支持这样的操作,该怎么扩展呢?

杨成思考了一会儿,决定基于以下的策略:

每次新增元素(垃圾)之前,检测数组容量是否足够。

如果不够,就将新容量扩充为原来的15倍。

这种方式,被jdk(java开发工具包)所采用,具体实现上更复杂。

但在这个问题上,简单逻辑就够了。

那么就开始动手实现吧!