Java Arrays中System.arraycopy的作用

小樊
83
2024-09-06 06:24:16

System.arraycopy 是 Java 中的一個(gè)方法,用于將一個(gè)數(shù)組的元素復(fù)制到另一個(gè)數(shù)組中。這個(gè)方法在 java.lang.System 類中定義,主要用于處理數(shù)組之間的復(fù)制操作。

System.arraycopy 方法的作用是:從源數(shù)組中復(fù)制指定長(zhǎng)度的元素到目標(biāo)數(shù)組中,并且可以指定源數(shù)組和目標(biāo)數(shù)組的起始位置。

System.arraycopy 方法的語(yǔ)法如下:

public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

參數(shù)說(shuō)明:

  • src:源數(shù)組,可以是任何類型的數(shù)組(例如 int[]、String[] 等)。
  • srcPos:源數(shù)組中的起始位置,從這個(gè)位置開(kāi)始復(fù)制元素。
  • dest:目標(biāo)數(shù)組,必須與源數(shù)組類型相同。
  • destPos:目標(biāo)數(shù)組中的起始位置,從這個(gè)位置開(kāi)始粘貼元素。
  • length:要復(fù)制的元素?cái)?shù)量。

使用示例:

int[] srcArray = {1, 2, 3, 4, 5};
int[] destArray = new int[5];

System.arraycopy(srcArray, 0, destArray, 0, 5);

// destArray 現(xiàn)在包含 {1, 2, 3, 4, 5}

注意事項(xiàng):

  1. 如果源數(shù)組和目標(biāo)數(shù)組的類型不同,System.arraycopy 會(huì)拋出 ArrayStoreException。
  2. 如果源數(shù)組或目標(biāo)數(shù)組為 null,System.arraycopy 會(huì)拋出 NullPointerException
  3. 如果源數(shù)組或目標(biāo)數(shù)組的起始位置加上要復(fù)制的元素?cái)?shù)量超過(guò)了數(shù)組的長(zhǎng)度,System.arraycopy 會(huì)拋出 IndexOutOfBoundsException。

0