java如何增加数组长度

遇到一个面试题:在不使用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){
 
 
}

转载于:https://www.cnblogs.com/xh_Blog/p/7154195.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值