往数组里面加东西,数组满了,大小加倍,用JAVA如何实现?

来源:百度知道 编辑:UC知道 时间:2024/05/21 19:18:40
问题如上。
谢谢!
能否给出一个可以运行的程序呢?可以拿出来供大家研究一下,谢谢你们了!!!

既然到java领域了就该利用java所封装的功能来实现我们所需要的

// use ArryayList SetValue
List ls = new ArrayList();
ls.add(obj);

// getValue
for (int i = 0; i < ls.size(); i++) {
sArray[i] = (String) ls.get(i); // if obj is String object
}

如你的数组是int[] a=new int[10];加倍为:
int[] b=new int[a.length*2];
b=a;
那么b里面的前10个是a,这样实现了加倍,你试试,我没JDK,不知道有用没。另外欢迎访问我的个人网站:junqing124.vip2.upftp.com

JAVA的数组是无法动态扩充容量的,有个解决办法是,当数组满了后,重新new一个大小加倍的数组,然后执行一次拷贝操作,把原数组的内容复制到新数组后,使用新数组继续操作。
JAVA提供了一些类可以支持动态扩充的功能,比如java.util.ArrayList和java.util.Vector,他们对上面的机制进行了封装,使得你使用他们的时候可以自动扩展自己。

用ArrayList