/**
* Reallocates an array with a new size, and copies the contents
* of the old array to the new array.
* @param oldArray the old array, to be reallocated.
* @param newSize the new array size.
* @return A new array with the same contents.
*/
private static Object resizeArray (Object oldArray, int newSize) {
int oldSize = java.lang.reflect.Array.getLength(oldArray);
Class elementType = oldArray.getClass().getComponentType();
Object newArray = java.lang.reflect.Array.newInstance(
elementType,newSize);
int preserveLength = Math.min(oldSize,newSize);
if (preserveLength > 0)
System.arraycopy (oldArray,0,newArray,0,preserveLength);
return newArray; }
// Test routine for resizeArray().
public static void main (String[] args) {
int[] a = {1,2,3};
a = (int[])resizeArray(a,5);
a[3] = 4;
a[4] = 5;
for (int i=0; i<a.length; i++)
System.out.println (a[i]); }
How to resize a two-dimensional array
Two-dimensional arrays in Java are arrays of arrays. To resize a two-dimensional array, the resizeArray function must be applied to the outer array and to all the nested arrays.
Example:
int a[][] = new int[2][3];
//...
a = (int[][])resizeArray(a,20);
// new array is [20][3]
for (int i=0; i<a.length; i++) {
if (a[i] == null)
a[i] = new int[30];
else a[i] = (int[])resizeArray(a[i],30); }
// new array is [20][30]
分享到:
相关推荐
图形学教学1.2_高效的DynamicArray
导师布置的基础作业,包括DynamicArray-class 动态数组类的基本操作,template类和STL的简单运用。为了方便更好的理解我把作业要求也放在里面了。相似代码可能网上也有的吧,就当做个备份了_(:з」∠)_
DynamicArray02.java
图形学教程1.3_Templated DynamicArray
图形学教学1.1_基本的DynamicArray
1.2_高效的DynamicArray_图形学_源码.zip
动态数组 C语言上的动态数组实现。 如何使用 将文件dynamic_array.h和dynamic_array.c克隆到您的项目文件夹中。 例子 您可以在main.c中看到所有示例
三种动态对象数组的使用和对比(Tlist类、DynamicArray、STL中的vector容器)。
一个动态数组设置程序,可以增加,删除数组头,尾,和一般数组效率比较等
dynamic arrays in object
动态数组我们在Java中看到的基本上是ArrayList
惠普hpe 板载Smart Array B140i Windows Server 2012/2016/2019 64位驱动
ADTSet-DynamicArray 这是在Set ADT上实现动态数组的一种可能方式。
ADTSortedBag-DynamicArray 这是在SortedBag ADT上实现动态数组的一种可能方式。
HP Dynamic Smart Array RAID Controller User Guide.pdf
动态数组道场 Dojo练习动态数组数据结构。 您的目标是使所有测试通过!
dynarr软件包是用C编写的,具有C ++兼容性的,用于Linux平台的共享库中的动态数组的简单易用函数集合。 它带有一个效率测试仪。
Judy是实现为C可调用库的通用动态数组。 Judy 的速度和内存使用通常优于其他数据存储模型,并且在处理非常大的数据集时会有所改进。
Delphi\C++Builder都可以,亲测在XE10下可以安装并使用,使用自带的Installer即可完成,好像也可以安装在其他旧版XE上。原资源地址标注是Personal Version...解决办法:将所有TArray_1替换成“DynamicArray”即可解决。
从俄罗斯一个Delphi资源网站上下载来的。本人使用C++Builder做开发,亲测在XE10下可以安装并使用,使用自带的Installer即可完成,好像也可以安装在其他旧...解决办法:将所有TArray_1替换成“DynamicArray”即可解决。