遇到一个面试题:在不使用list的add方法的情况下,动态的添加元素(大概是这个样子);
ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,需学习arraylist的相关知识(http://www.cnblogs.com/ITtangtang/p/3948555.html);
我首先想到的就是数组,但java中的数组是定长的,无法动态增加长度。如果要扩充数组,那就只能通过重新定义数组,把旧数组内容拷贝到新数组中。
例如:
1、定义一个旧数组
int[] arrOld =
new
int[2];
//旧数组定义
2、要扩充数组长度到3,需要重新定义数组
int
[] arrNew =
new
int
[
arrOld.length*2
];
//定义新数组,增加一倍的长度
for
(
int
i=
0
;i<arrOld.length;i++){
arrNew[i] = arrOld[i];
//把旧数组中的元素拷贝到新数组中
}
大概有这么个思路,具体如何实现,有空再给出一个完整的解决方法;
题如下:
/**
*在不使用list的add的情况下将element添加到list中
*/
public class testAdd(Object element){
}