如何使用Java代码修改数组大小呢?
2023-03-31 10:45:52 时间
转自:http://www.java265.com/JavaJingYan/202111/16357342581649.html
数组是Java开发中非常重要的一个数据存储容器,
那可以存储多种类型,基础类型,引用类型,但是它有一个缺点,就是一旦创建后,就不可以修改数组的大小,
那么我们如何动态的扩容数组的大小呢?下文将一一道来,如下所示:
下文笔者讲述使用Java代码修改数组大小的方法分享,如下所示:
实现思路:
1.新建指定容量大小的数组
2.将原数组复制到新数组中
采用以上方式,可变相的实现数组的扩容
例:
数组的扩容的示例分享
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;
}
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]);
}
相关文章
- 频繁插入(insert)的业务,用什么存储引擎更合适? | 数据库系列
- Java大牛分享关于Redis缓存的几道典型面试题
- Java架构之Redis系列:通过文章点赞排名案例学习Sortedset命令
- 基于内存和 Redis 的两级 Java 缓存框架
- Java 框架之Redis 分布式缓存
- Java开发人员使用哪些大数据工具?
- 聊聊Java数据库开发的那点事儿
- 是否值得付费?Oracle,Open JDK等四大JVM性能全面对比
- 主流Java数据库连接池分析(C3P0,DBCP,TomcatPool,BoneCP,Druid)
- Java面试中常问的数据库方面问题
- Java高级编程——慢SQL问题经验总结
- Java面试要点-数据存储-精简答案
- 使用Java语言从零开始创建区块链
- 基于OS信号实现Java异步通知
- 在Android Native层中创建Java虚拟机实例
- Java Memcached Client Benchmark
- Practical Clojure - Parallel Programming
- Storm源码浅析之topology的提交
- 春节值班智能通知
- Java程序员常用工具集