[an error occurred while processing this directive]

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>javac ArrayCopyDemo.java
C:\tamana>java ArrayCopyDemo
cdefg
C:\tamana>

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.

                         

[an error occurred while processing this directive]