最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

數(shù)組在java中的擴容的實例方法

 更新時間:2021年01月26日 14:43:10   作者:小妮淺淺  
在本篇文章里小編給大家分享的是一篇關(guān)于數(shù)組在java中的擴容的實例方法內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。

在使用數(shù)組的時候,因為大小的限制,難免會出現(xiàn)不夠用的現(xiàn)象。直接給數(shù)據(jù)對象擴容是不可行的,這時候就需要我們找尋一些其他的方法。本篇先為大家簡單分析擴容的原理,然后創(chuàng)建一個數(shù)組供大家使用,最后提供兩種數(shù)組擴容方法:for循環(huán)Arrays,下面一起來看具體的操作。

1.擴容的原理

(1)Java數(shù)組對象的大小是固定不變的,數(shù)組對象是不可擴容的。

(2)利用數(shù)組復(fù)制方法可以變通的實現(xiàn)數(shù)組擴容。

(3)System.arraycopy()可以復(fù)制數(shù)組。

(4)Arrays.copyOf()可以簡便的創(chuàng)建數(shù)組副本。

(5)創(chuàng)建數(shù)組副本的同時將數(shù)組長度增加就變通的實現(xiàn)了數(shù)組的擴容。

2.先創(chuàng)建數(shù)組

import java.util.Arrays;
//數(shù)組的擴容示例
public class Test {
public static void main(String [] args){
//創(chuàng)建一個原始數(shù)組,并做好初始化。
// int [] arry = {1,3,5,7,9};
int arry[] =new int[]{1,3,5,7,9};
int arry1[]=new int[7];//新建一個新數(shù)組這里的7=arry.length+需要擴容的長度
System.out.println("打印原始數(shù)組的長度為:"+arry.length);
System.out.println("打印新數(shù)組的長度為:"+arry1.length);
//驗證該數(shù)組有沒有創(chuàng)建完成,可以獲取一下數(shù)組元素看看能不能成功。
// System.out.println(arry[1]);
//把從舊數(shù)組中獲取的數(shù)據(jù)一個一個的存到新的數(shù)組里面去,并新增兩個數(shù):11,13。
//如何把數(shù)據(jù)存到數(shù)組里面去,使用arry1[0]=1;
/*

3.方法一:循環(huán)遍歷原始數(shù)組arry,長度是固定的,所以用for循環(huán)。

//1、先完成復(fù)制數(shù)組
for(int i=0;i<arry.length;i++){
arry1[i] = arry[i];
}
//2、再完成賦值插入操作,即已完成數(shù)組的擴容操作。
arry1[5]=11;
arry1[6]=13;
System.out.println("新數(shù)組為:"+arry1[5]);
System.out.println("新數(shù)組為:"+arry1[6]);
*/
/*

4.方法二:使用java的util包的Arrays類的copyOf(原數(shù)組名,新數(shù)組長度)方法來進行復(fù)制。

arry1 = Arrays.copyOf(arry,arry.length+2);
arry1[5] = 11;
arry1[6] = 13;
System.out.println("新數(shù)組為:"+arry1[5]);
System.out.println("新數(shù)組為:"+arry1[6]);

以上就是數(shù)組在java中的擴容方法,這兩種方法相對新手而言,是非常容易實現(xiàn)擴容的。

相關(guān)實例擴展:

import java.util.Arrays;
public class HelloWorld {
	public static void main(String[] args){
	//	Scanner s = new Scanner(System.in);
	//	System.out.println("請輸入一個數(shù)字");
	//	int num = s.nextInt();
	int []a = {1,2,3,4,5};
	int []b = new int[a.length] ;
		//1、源數(shù)組
		//2、源數(shù)組的哪個位置開始
		//3、目標(biāo)數(shù)組
		//4、目標(biāo)數(shù)組的哪個位置開始存放
		//5、拷貝幾個
		//System.arraycopy(a, 0, b, 0, a.length);
		//Demoe.PrintArray(b);
		//擴容--->擴容了一倍
		//a = Arrays.copyOf(a, 2*a.length) ;
		//Demoe.PrintArray(a);
		a = insertArray(a , 3 , 100) ;
		//打印數(shù)組
		System.out.println(Arrays.toString(a));
	}
	//寫一個函數(shù),向整數(shù)數(shù)組的任意pos位置插入一個元素value
	public static int[] insertArray(int []a , int pos , int value){
		if(pos < 0 || pos > a.length + 1) //索引下標(biāo)不對,直接返回源數(shù)組 
			return a ;
		//放入一個元素,先擴容,后復(fù)制
		a = Arrays.copyOf(a, a.length+1) ;
		for(int i = a.length - 1 ; i > pos ; i--){
			a[i] = a[i-1] ; //后移動
		}
		a[pos] = value ;
		return a ;
	}
}

到此這篇關(guān)于數(shù)組在java中的擴容的實例方法的文章就介紹到這了,更多相關(guān)數(shù)組在java中的擴容方法淺析內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Junit單元測試加載配置文件失敗問題

    Spring Junit單元測試加載配置文件失敗問題

    這篇文章主要介紹了Spring Junit加載配置文件失敗問題解決,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • Java中的序列化(Serializable)和反序列化

    Java中的序列化(Serializable)和反序列化

    這篇文章主要介紹了Java中的序列化(Serializable)和反序列化,?JAVA序列化與反序列化就是JAVA對象與一串字節(jié)流之間的相互轉(zhuǎn)換,?我們在程序中創(chuàng)建的JAVA對象只存在于JVM中,需要的朋友可以參考下
    2023-09-09
  • Calcite使用SQL實現(xiàn)查詢excel內(nèi)容

    Calcite使用SQL實現(xiàn)查詢excel內(nèi)容

    因為calcite本身沒有excel的適配器,?所以本文將模仿calcite-file,?搞一個calcite-file-excel實現(xiàn)查詢excel內(nèi)容,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-01-01
  • spring?boot只需兩步優(yōu)雅整合activiti示例解析

    spring?boot只需兩步優(yōu)雅整合activiti示例解析

    這篇文章主要主要來教大家spring?boot優(yōu)雅整合activiti只需兩步就可完成測操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助祝大家多多進步
    2022-03-03
  • SpringBoot任務(wù)調(diào)度器的實現(xiàn)代碼

    SpringBoot任務(wù)調(diào)度器的實現(xiàn)代碼

    SpringBoot自帶了任務(wù)調(diào)度器,通過注解的方式使用。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • IDEA中make directory as的作用及說明

    IDEA中make directory as的作用及說明

    這篇文章主要介紹了IDEA中make directory as的作用及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-09-09
  • 解決springboot啟動失敗的問題('hibernate.dialect'?not?set)

    解決springboot啟動失敗的問題('hibernate.dialect'?not?set)

    這篇文章主要介紹了解決springboot啟動失敗的問題('hibernate.dialect'?not?set),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 在Spring中利用@Order注解對bean和依賴進行排序

    在Spring中利用@Order注解對bean和依賴進行排序

    在Spring框架中,@Order是一個經(jīng)常被忽視但非常重要的注解,在項目開發(fā)中,當(dāng)我們需要維護bean的特定順序或者存在許多相同類型的bean時,這個注解就發(fā)揮了作用,這篇文章講的就是如何利用@Order注解對bean和依賴進行排序,需要的朋友可以參考下
    2023-11-11
  • RocketMQ?ConsumeQueue與IndexFile實時更新機制源碼解析

    RocketMQ?ConsumeQueue與IndexFile實時更新機制源碼解析

    這篇文章主要為大家介紹了RocketMQ?ConsumeQueue與IndexFile實時更新機制源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • 基于Java實現(xiàn)記事本功能

    基于Java實現(xiàn)記事本功能

    這篇文章主要為大家詳細介紹了基于Java實現(xiàn)記事本功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12

最新評論

象州县| 台中县| 囊谦县| 即墨市| 离岛区| 泽州县| 海晏县| 黎城县| 中方县| 泸定县| 甘德县| 平罗县| 南乐县| 古蔺县| 达拉特旗| 祁连县| 乐陵市| 金溪县| 得荣县| 滁州市| 通道| 巴林右旗| 牟定县| 隆安县| 呼玛县| 芜湖县| 岗巴县| 忻城县| 襄垣县| 汕尾市| 肥乡县| 延庆县| 桦南县| 遵义县| 同仁县| 丰县| 古交市| 泰州市| 应城市| 桃江县| 印江|