模擬System中的arraycopy方法

2021-09-26 18:59:07 字數 1104 閱讀 9947

陣列拷貝:從指定源陣列中複製乙個陣列,複製從指定的位置開始,到目的陣列的制定位置結束。即從src引用的源陣列到dest引用的目標陣列,陣列元件的乙個子串行被複製下來,源陣列中位置在srcpos到srcpos+length-1之間的元件分別被複製到目標陣列的destpos到destpos到destpos+length-1位置。

語法:public static void arraycopy(object src,object srcpos,object dest,object destpos,int length)

引數:src:源陣列

srcpos:從源陣列的哪乙個索引位置開始拷貝

dest:目標陣列

destpos:從目標陣列的哪乙個索引位置開始黏貼

length:拷貝元素的個數

因為system類中已經存在了arraycopy方法的實現,所以接下來我們來模擬實現arraycopy,**及測試過程如下

class review;//源陣列

int dest=new int[10];//目標陣列

//需求:從src陣列中拷貝3,4,5,6元素到dest陣列中

printarray(dest);//[0,0,0,0,0,0,0,0,0,0]

copy(src,2,dest,5,4);//拷貝操作

printarray(dest);//結果應為[0,0,0,0,0,2,3,4,5,0]

} static void copy(intsrc,int srcpos,int dest,int destpos,int length){

for(int index=srcpos;index執行結果如下:

陣列拷貝操作是經常使用到的,因此sun公司就直接把陣列的拷貝操作存放在jdk中的system類中。因為該方法是靜態的,所以我們在以後的使用中直接使用該方法所造的類名來呼叫,就不需要自己來寫實現。只需要把引數傳遞進arraycopy()中即可:了例如:system.arraycopy(src,2,dest,5,4);

C中的system函式

windows作業系統下system 函式詳解 主要是在c語言中的應用 函式名 system 功 能 發出乙個dos命令 用 法 int system char command system函式已經被收錄在標準c庫中,可以直接呼叫 程式例 include include int main void ...

特長生模擬 Array(水)

1s 256m 1.1 題目描述 alice 有乙個數列ai。但是她不喜歡這個數列,於是她決定隨機交換其中兩個數。alice 想知道,交換後的數列與原數列相同的數有多少個。請求出所有可能的 值。1.2 輸入格式 第一行乙個正整數n,表示alice 的數列的長度。第二行n 個正整數,第i 個數表示ai...

C 中的陣列(array)

陣列是乙個無序的元素序列。陣列元素儲存在乙個連續性的記憶體塊中,並可使用乙個整數索引來訪問。宣告陣列變數時,陣列的大小不是宣告的一部分。int dogs 宣告陣列 宣告時不需要指定陣列的大小只有在實際建立陣列例項的時候,才需要指定陣列的大小。建立陣列例項時編譯器預設將陣列元素初始化為0,null,f...