首页 > 编程语言 >如何使用Java代码修改数组大小呢?

如何使用Java代码修改数组大小呢?

时间:2022-09-30 17:22:22浏览次数:74  
标签:newSize Java int 代码 Object 数组 oldArray

转自: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]); 
}

 

标签:newSize,Java,int,代码,Object,数组,oldArray
From: https://www.cnblogs.com/javalove2022/p/16745598.html

相关文章

  • Java: 压缩PDF文档
    PDF文档在日常工作中应用广泛,经常用于保存公司文件,电子图书或网络资料等大篇幅内容。然而,内容过多往往也会导致PDF文件过大,不便于其保存和发送。在这种情况下,我们可以选择......
  • Java Hutool 包工具类推荐 ExcelUtil
    JavaHutool包工具类推荐ExcelUtil包引入hutool包版本号可根据实际情况更换 <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifa......
  • Java HttpUtil 工具类 (使用 Apache HttpClient 包)
    JavaHttpUtil工具类(使用ApacheHttpClient包)第一步引入包 <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</a......
  • 如何通过执行SQL为低代码项目提速?
    见多了SQL为代码开发提速,那么当低代码遇到SQL会擦出怎样的火花呢?本文将低代码和SQL结合进行介绍,让大家了解如何通过执行SQL为低代码项目提速。背景自从计算机诞生的一刻起......
  • Jmeter 使用json提取器循环提取数组值
    一、使用json提取器提取数组值:   提取数组: -1代表取所有的数组值,默认值not_found;二、添加循环控制器,循环次数为数组长度:${变量名_matchNr}示例:${TaskID2_matchN......
  • Java集合框架之List
    1.List集合概要2.Iterable接口1.概要2.重要方法forEach方法:对Collection集合中的每个对象进行消费List<Student>list=Stream.generate(()->newStudent("张......
  • 如何通过执行SQL为低代码项目提速?
    见多了SQL为代码开发提速,那么当低代码遇到SQL会擦出怎样的火花呢?本文将低代码和SQL结合进行介绍,让大家了解如何通过执行SQL为低代码项目提速。背景自从计算机诞生的一刻......
  • Java线程池
    Java线程池线程池的执行过程当向线程池提交一个新的任务,线程池首先判断核心线程池的线程是否都在执行任务。如果不是,创建一个新的工作线程来执行任务。如果核心线程的......
  • 力扣500(java&python)-键盘行(简单)
    题目:给你一个字符串数组words,只返回可以使用在美式键盘同一行的字母打印出来的单词。键盘如下图所示。美式键盘中:第一行由字符"qwertyuiop"组成。第二行由字符"......
  • JAVA关键字修饰
    Java中,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。Java支持4种不同的访问权限。default (即默认,什么也不写):在同一包内可见,不使用任何修饰符。使......