Copying Arrays

In this section, you will learn how to copy the elements of one array to another through an example.

Copying Arrays

Copying Arrays


After learning all about arrays, there is still one interesting thing left to learn i.e. copying arrays. It means to copy data from one array to another. The precise way to copy data from one array to another is

public static void arraycopy(Object source,
                   int srcIndex,
                   Object dest,
                   int destIndex,
                   int length)

Thus apply system's arraycopy method for copying arrays.The parameters being used are :-

src  the source array
srcIndex start position (first cell to copy) in the source array
dest  the destination array
destIndex start position in the destination array
length the number of array elements to be copied

The following program, ArrayCopyDemo(in a .java source file), uses arraycopy to copy some elements from the copyFrom array to the copyTo array.

public class ArrayCopyDemo{
  public static void main(String[] args){
  char[] copyFrom = {'a','b','c','d','e','f','g','h','i','j'};
  char[] copyTo = new char[5];
  System.arraycopy(copyFrom, 2, copyTo, 05);
  System.out.println(new String (copyTo));

Output of the program:

C:\tamana>java ArrayCopyDemo

In this example the array method call begins the copy of elements from element number 2. Thus the copy begins at the array element 'c'. Now, the arraycopy method takes the copied element and puts it into the destination array. The destination array begins at the first element (element 0) which is the destination array copyTo. The copyTo copies 5 elements : 'c', 'd', 'e', 'f', 'g'. This method will take "cdefg" out of "abcdefghij", like this : 

Following image illustrates the procedure of copying array from one to another.


Donwload this example.