Java修改数组长度

简介: java中没有关于修改数组长度的api,在此本人提供了修改数组长度的两个函数:arrayAddLength()和arrayReduceLength().详细见代码. [java] view plaincopyprint?import java.
java中没有关于修改数组长度的api,在此本人提供了修改数组长度的两个函数:arrayAddLength()和arrayReduceLength().详细见代码. 
[java] view plaincopyprint?
import java.lang.reflect.Array;  
  
/** 
* Description: This class is used to adjust array length. 
* @author e421083458 
*/  
public class ArrayTest {  
  
/** 
* @param args 
*/  
public static void main(String[] args) {  
int a[]= new int[]{0,1,2,3,4,5};  
int b[]= new int[]{0,1,2,3,4,5};  
a = (int[]) arrayAddLength(a,2);  
b = (int[]) arrayReduceLength(b,2);  
//out print array lenght  
System.out.println(a.length);  
for (int i=0;i<a.length;i++){  
System.out.print(a[i]);  
}  
System.out.println();  
  
System.out.println(b.length);  
for (int i=0;i<b.length;i++){  
System.out.print(b[i]);  
}  
}  
/** 
* Description: Array add length 
* @param oldArray 
* @param addLength 
* @return Object 
*/  
public static Object arrayAddLength(Object oldArray,int addLength) {  
Class c = oldArray.getClass();  
if(!c.isArray())return null;  
Class componentType = c.getComponentType();  
int length = Array.getLength(oldArray);  
int newLength = length + addLength;  
Object newArray = Array.newInstance(componentType,newLength);  
System.arraycopy(oldArray,0,newArray,0,length);  
return newArray;  
}  
/** 
* Description: Array reduce lenght 
* @param oldArray 
* @param reduceLength 
* @return Object 
*/  
public static Object arrayReduceLength(Object oldArray,int reduceLength) {  
Class c = oldArray.getClass();  
if(!c.isArray())return null;  
Class componentType = c.getComponentType();  
int length = Array.getLength(oldArray);  
int newLength = length - reduceLength;  
Object newArray = Array.newInstance(componentType,newLength);  
System.arraycopy(oldArray,0,newArray,0,newLength);  
return newArray;  
}  
}  
若转载请注明出处!若有疑问,请回复交流!
目录
相关文章
|
29天前
|
存储 Java
Java数组07:稀疏数组
【8月更文挑战第23天】
25 2
|
28天前
|
Java
|
2天前
|
存储 Java 数据处理
Java 数组的高级用法
在 Java 中,数组不仅可以存储同类型的数据,还支持多种高级用法,如多维数组(常用于矩阵)、动态创建数组、克隆数组、使用 `java.util.Arrays` 进行排序和搜索、与集合相互转换、增强 for 循环遍历、匿名数组传递以及利用 `Arrays.equals()` 比较数组内容。这些技巧能提升代码的灵活性和可读性,适用于更复杂的数据处理场景。
|
3天前
|
存储 Java
java的Excel导出,数组与业务字典匹配并去掉最后一个逗号
java的Excel导出,数组与业务字典匹配并去掉最后一个逗号
18 2
|
24天前
|
Java
Java数组的应用场景
Java数组的应用场景
28 1
|
24天前
|
存储 机器学习/深度学习 Java
Java数组
Java数组
25 1
|
28天前
|
存储 Java
如何在 Java 中打印字符串数组列表
【8月更文挑战第23天】
26 2
|
28天前
|
存储 Java API
|
28天前
|
存储 安全 Java
Java 中数组和 ArrayList 的区别
【8月更文挑战第23天】
28 1
|
1月前
|
Java 索引
Java系列 之 Java复制(拷贝)数组的4种方法:arraycopy()方法、clone() 方法、copyOf()和copyOfRan
这篇文章介绍了Java中数组复制的四种方法:`Arrays.copyOf()`、`Arrays.copyOfRange()`、`System.arraycopy()`和`clone()`方法,以及它们的使用场景和示例代码。