
正文
java数组自动扩容代码 java数组自动扩容代码是什么
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java里面数组扩容怎么做的?
数组扩容可以通过新建一个数组长度设大点,然后通过 System.arraycopy(a1,0,a2,0,a.length)这种方式扩容,其他方式貌似没有。。。
相关问答
Q1: 往数组里面加东西,数组满了,大小加倍,用JAVA如何实现?
你好!
JAVA的数组是无法动态扩充容量的,有个解决办法是,当数组满了后,重新new一个大小加倍的数组,然后执行一次拷贝操作,把原数组的内容复制到新数组后,使用新数组继续操作。
JAVA提供了一些类可以支持动态扩充的功能,比如java.util.ArrayList和java.util.Vector,他们对上面的机制进行了封装,使得你使用他们的时候可以自动扩展自己。
如有疑问,请追问。
Q2: 用Myeclipse 编写 Java程序 如何设置自动增长的数组?
使用list会比array更好用些,具体写法
上面定义了一个Person类,下面如何使用List
Person p1=new Person();
Person p2=new Person();
List list=new ArrayList();
list.add(p1);
list.add(p2);//这里是将对象加入到list中
for(int i=0;ilist.size();i++){//利用循环,将person对象全部一一取出
Person p=(Person)list.get(i);//注意,这里一定要强制类型转换,因为List中取出java数组自动扩容代码的对象都是Object类型的
}
数组转为listjava数组自动扩容代码:
String[] jxbhArr = jxbhAll.split(",");
ListString list = Arrays.asList(jxbhArr);
Q3: 矩阵用数组来存储,怎样用以+5的速度自动扩充(java)
当超过当前数组范围的时候,new 一个新的数组。将旧的数据copy过去。
java有一个System.copyArray的方法可以快速的复制一个数组。
以一维数组为例。
int initLength = 100;
int array[] = new int [initLength];
int used = 0;
public void put(int a){
if(used = array.length){
int as[] = new int[array.length+5];
System.arrayCopy(array,as,0,array.length);
array = as;
}
array[used] = a;
used++;
}
纯手打,没有测试。你可以参考一下这个思路。
关于java数组自动扩容代码和java数组自动扩容代码是什么的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






